2016-04-11 16 views
-1

私はfollを持っています。 numpyの中のコードは:ここnumpy配列のマスク値

mask_cntr = np.copy(map_ccodes) 
mask_cntr[mask_cntr == cntr] = 1.0 
mask_cntr[mask_cntr != 1.0] = 0.0 

、Iはmap_ccodesmask_cntrに2次元配列をコピーし、そして0.01.0にその配列内cntrを同じ値、および他のすべてを割り当てています。

numpyでこれを行うにはもっと速く、より無作法な方法がありますか?

答えて

2

np.where機能は、条件を受け入れ、条件がTrueまたはFalseであることに基づいて出力を返します。

np.where(mask_cntr == cntr, 1.0, 0.0) 
0

は、私はあなたのコードからcntr == 1と仮定しています

mask_cntr = 1.0*(map_ccodes==cntr) 

を試してみてください?

とにかく別のマスクが必要なのはなぜですか?あなたはいつもどこでもmap_ccodes==cntr引数を使用することができます...

関連する問題