Bus errorとSegmentation faultに困ったら見るブログ

物理の研究者による日々の研究生活のメモ書きです ( python/emacs/html/Japascript/シェルスクリプト/TeX/Mac/C言語/Linux/git/tmux/R/ポケモンGO)

【numpy, python3】arrayからある範囲のデータ以外を取り出して別のarrayを作る

■ 参考 : Numpyで特定のindex以外を抽出する方法

■ 参考 : Numpy で特定のインデックス以外の要素を取り出す

arrというndarrayに条件を掛けて、条件を満たす成分をarrから抜いて、別のarrayを作成する
例えば、arrの中身がx0より大きいものだけ取り除きたいときは、

index = np.ones(len(arr), dtype=bool)
for i in range(len(arr)):
 if arr[i] > x0:
  index[i] = False
new_arr = arr[index]
他にもindex[i] = Falseをindex[i-5:i+5] = Falseとかすれば、x0より大きいインデックスの前後5成分も同時に弾ける

ランキング参加中です

↓クリックしていただけると嬉しいです〜