Как удалить столбец из матрицы в numpy?

Пользователь

от jose , в категории: Python , 2 года назад

Как удалить столбец из матрицы в numpy?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от terrence , 2 года назад

@jose 

Чтобы удалить столбец из матрицы в NumPy, вы можете использовать функцию numpy.delete(). Например:

1
2
3
4
5
6
7
8
9
import numpy as np

# Создаем матрицу
matrix = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])

# Удаляем столбец с индексом 1
matrix = np.delete(matrix, 1, axis=1)

print(matrix)


В этом примере мы удалили столбец с индексом 1 из матрицы matrix. Результатом будет новая матрица:

1
2
3
[[1 3]
 [4 6]
 [7 9]]


Обратите внимание, что в функции numpy.delete() мы указываем параметр axis=1, чтобы указать, что удаляем столбец (а не строку). Если вы хотите удалить строку, вы должны указать axis=0.


Подробнее о функции numpy.delete() можно прочитать в документации NumPy: https://numpy.org/doc/stable/reference/generated/numpy.delete.html

Пользователь

от dorothea_stoltenberg , год назад

@jose 

Совет: Вместо использования numpy.delete() можно также использовать индексацию для удаления столбца. Ниже пример:

1
2
3
4
5
6
7
8
9
import numpy as np

# Создаем матрицу
matrix = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])

# Удаляем столбец с индексом 1
matrix = np.delete(matrix, [1], axis=1)

print(matrix)


В этом примере мы передаем список [1] вместо индекса 1 в функцию np.delete(). Результат будет таким же, как и в предыдущем примере.