Numpy配列から特定の要素を削除する方法
次のメソッドを使用して、NumPy 配列から特定の要素を削除できます。
方法 1: 特定の値に等しい要素を削除する
#remove elements whose value is equal to 12
new_array = np. delete (original_array, np. where (original_array == 12))
方法 2: リスト内の特定の値に等しい要素を削除する
#remove elements whose value is equal to 2, 5, or 12
new_array = np. setdiff1d (original_array, [2, 5, 12])
方法 3: インデックス位置に基づいて項目を削除する
#remove elements in index positions 0 and 6
new_array = np. delete (original_array, [0, 6])
次の例は、各メソッドを実際に使用する方法を示しています。
例 1: 特定の値に等しい要素を削除する
次のコードは、値が 12 に等しい NumPy 配列からすべての要素を削除する方法を示しています。
import numpy as np
#define original array of values
original_array = np. array ([1, 2, 2, 4, 5, 7, 9, 12, 12])
#remove elements whose value is equal to 12
new_array = np. delete (original_array, np. where (original_array == 12))
#view new array
print (new_array)
[1 2 2 4 5 7 9]
12 に等しい 2 つの配列要素が削除されていることに注意してください。
例 2: リスト内の特定の値に等しい要素を削除する
次のコードは、値が 2、5、または 12 に等しいすべての要素を NumPy 配列から削除する方法を示しています。
import numpy as np
#define original array of values
original_array = np. array ([1, 2, 2, 4, 5, 7, 9, 12, 12])
#remove elements whose value is equal to 2, 5, or 12
new_array = np. setdiff1d (original_array, [2, 5, 12])
#view new array
print (new_array)
[1 4 7 9]
値が 2、5、または 12 の項目はすべて削除されていることに注意してください。
例 3: インデックス位置に基づいて項目を削除する
次のコードは、NumPy 配列からインデックス位置 0 と 6 の要素を削除する方法を示しています。
import numpy as np
#define original array of values
original_array = np. array ([1, 2, 2, 4, 5, 7, 9, 12, 12])
#remove elements in index positions 0 and 6
new_array = np. delete (original_array, [0, 6])
#view new array
print (new_array)
[2 2 4 5 7 12 12]
インデックス位置0 (値 1) とインデックス位置6 (値 9) の要素は両方とも NumPy 配列から削除されていることに注意してください。
追加リソース
次のチュートリアルでは、Python で他の一般的な操作を実行する方法について説明します。