numpy配列から特定の要素を削除するにはどうすればいいでしょうか?
import numpy as np
a = np.array([1,2,3,4,5,6,7,8,9])
3,4,7
次に、から を削除したいと思いますa
。わかっているのは、値のインデックス ( index=[2,3,6]
) だけです。
ベストアンサー1
使用numpy.delete()
軸に沿ったサブ配列が削除された新しい配列を返します。
numpy.delete(a, index)
具体的な質問については:
import numpy as np
a = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9])
index = [2, 3, 6]
new_a = np.delete(a, index)
print(new_a)
# Output: [1, 2, 5, 6, 8, 9]
numpy.delete()
は新しい配列を返すことに注意してください。配列スカラーPythonの文字列と同様に不変なので、変更されるたびに新しいオブジェクトが作成されます。つまり、delete()
ドキュメント:
「obj で指定された要素が削除された arr のコピー。削除はインプレースでは実行されないことに注意してください...」
私が投稿したコードに出力がある場合、それはコードを実行した結果です。