Python NumPy Array: удаление нескольких столбцов — методы и примеры кода

Чтобы удалить несколько столбцов из массива NumPy в Python, вы можете использовать различные методы. Вот несколько примеров:

Метод 1: использование функции delete() NumPy

import numpy as np
# Create a sample array
arr = np.array([[1, 2, 3],
                [4, 5, 6],
                [7, 8, 9]])
# Delete multiple columns
columns_to_delete = [0, 2]  # Specify the column indices to delete
new_arr = np.delete(arr, columns_to_delete, axis=1)
print(new_arr)

Выход:

[[2]
 [5]
 [8]]

Метод 2: использование индексации NumPy

import numpy as np
# Create a sample array
arr = np.array([[1, 2, 3],
                [4, 5, 6],
                [7, 8, 9]])
# Delete multiple columns
columns_to_delete = [0, 2]  # Specify the column indices to delete
new_arr = arr[:, ~np.isin(np.arange(arr.shape[1]), columns_to_delete)]
print(new_arr)

Выход:

[[2]
 [5]
 [8]]

Метод 3. Использование срезной нотации NumPy

import numpy as np
# Create a sample array
arr = np.array([[1, 2, 3],
                [4, 5, 6],
                [7, 8, 9]])
# Delete multiple columns
columns_to_delete = [0, 2]  # Specify the column indices to delete
new_arr = arr[:, np.logical_not(np.logical_or.reduce([np.arange(arr.shape[1]) == col_index for col_index in columns_to_delete]))]
print(new_arr)

Выход:

[[2]
 [5]
 [8]]