Как удалить определенные элементы из массива 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. Удаление элементов, равных определенному значению.

Следующий код показывает, как удалить все элементы из массива NumPy, значение которых равно 12:

 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. Удаление элементов, равных определенному значению, в списке.

Следующий код показывает, как удалить все элементы из массива NumPy, значения которых равны 2, 5 или 12:

 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. Удаление элементов на основе позиции индекса

Следующий код показывает, как удалить элементы с позициями индекса 0 и 6 из массива 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 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:

Как заполнить массив NumPy значениями
Как заменить элементы в массиве NumPy
Как получить определенную строку из массива NumPy

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *