Удалить строки в массиве 2d-numpy, если они содержат определенный элемент ⇐ Python

Программы на Python
Anonymous
Удалить строки в массиве 2d-numpy, если они содержат определенный элемент

Сообщение Anonymous »

У меня есть матрица 2d-np.array, и я хотел бы удалить все строки, содержащие элемент x в определенном столбце. Моя цель — вернуть матрицу без этих строк, поэтому она должна быть меньше.
Моя функция выглядит так:

Код: Выделить всё

def delete_rows(matrix, x, col):
for i in range(matrix.shape[0]-1):
if(matrix[i,col] == x):
np.delete(matrix, i, axis = 0)
return matrix
К сожалению, в моем тесте форма матрицы осталась прежней после удаления строк. Я думаю, что удаленные строки были заменены строками с нулями.
Какой-нибудь совет, как мне достичь своей цели?

Подробнее здесь: https://stackoverflow.com/questions/724 ... ic-element

Вернуться в «Python»