numpy.where(mask == False)
についてはPEP8の苦情があります。ここで、マスクはブール配列です。 PEP8の推奨比較は、「条件が偽である場合」または「条件でない場合」のいずれかである必要があります。提案された比較のためのpythonic構文は、numpy.where()
の内部には何ですか?ブーリアンマスキング配列によるPythonic配列のインデックス
答えて
NumPyでブール値のマスク配列を無効にすると、~mask
になります。
また、実際にwhere
が必要かどうかを検討してください。最も一般的に使用されていると思われるのはsome_array[np.where(some_mask)]
ですが、それはちょうど不必要な言葉遣いであり、非効率的な方法であるsome_array[some_mask]
です。
ブール索引付けは、 'where'バージョンと同じ時間がかかります。私は暗黙の 'where'があることを意味すると思います。 https://docs.scipy.org/doc/numpy/reference/arrays.indexing.html#boolean-array-indexing – hpaulj
@hpaulj:IIRCより複雑なケースでは、NumPyは 'nonzero'を呼び出しますが、単純なケースでは、これをバイパスしてブールマスクを直接使用します。 – user2357112
@hpaulj:['numpy/core/src/multiarray/mapping.c']の' array_boolean_subscript'コードを参照してください(https://github.com/numpy/numpy/blob/master/numpy/core/src/multiarray)。 /mapping.c)。私が得るタイミングは、私が期待したものではありません。いくつかの入力では、 'where'は実際にはより高速です! – user2357112
- 1. 配列のnumpy配列のためのPythonicの方法(行のインデックス付き)
- 2. 配列値の配列インデックス
- 3. 配列と配列インデックス
- 4. Java - 最初の配列インデックスによる配列のソート?
- 5. 配列変数によるPHP配列のインデックス
- 6. PHPの配列のインデックスに応じて配列のソート配列
- 7. 配列計算のためのPythonicアルゴリズム
- 8. 4D配列をインデックスするNumPy配列
- 9. 1D配列インデックスを2D配列インデックスに変換する
- 10. インデックスによる配列のフィルタ
- 11. インデックスの配列を持つアクセス配列
- 12. 配列のインデックスにある要素[(配列[文字列、ロング)]
- 13. インデックス配列
- 14. 逆インデックス配列
- 15. 配列インデックス
- 16. パイソン - インデックス配列
- 17. 配列インデックス
- 18. thymeleaf配列インデックス
- 19. 配列の別のインデックスに配列の配列を変更する
- 20. インデックス配列から連想配列へ -
- 21. 配列外のインデックス
- 22. Smartyの配列インデックス
- 23. AngularJSの配列インデックス
- 24. MongoDBのC#の配列のインデックスまたはインデックス付け配列
- 25. インデックス配列のインデックス作成時のNumpy配列の設定値
- 26. 別の配列の1つの配列のインデックスにアクセスする
- 27. 1 numpyの配列インデックスに
- 28. 他の配列で効率的にインデックスを付ける配列
- 29. 1D配列のインデックスを2D配列に変換する
- 30. 最後の配列に配列インデックスを挿入する
どのPEP8テスターを使用していますか? PEP8は一般的なPythonスタイルの勧告です。 'numpy'には適応していません。あなたの表情は私にとっては完璧に見えます。 – hpaulj
'mask == False'は'〜mask'と同じですが、 'mask is False'や' not mask'とはまったく異なります。 – hpaulj
@hpaulj私はpycharmを使用し、そのネイティブコード検査はpep8 v '1.7.0' – ktavabi