Как разрезать 2d-массив numpy (с примерами)


Вы можете использовать следующие методы для разрезания 2D-массива NumPy:

Метод 1: выберите определенные строки в 2D-массиве NumPy

 #select rows in index positions 2 through 5
arr[ 2 : 5 ,:]

Способ 2: выберите определенные столбцы в 2D-таблице NumPy

 #select columns in index positions 1 through 3
arr[:, 1 : 3 ]

Способ 3: выберите определенные строки и столбцы в 2D-таблице NumPy

 #select rows in range 2:5 and columns in range 1:3
arr[ 2 : 5,1 :3 ]

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

 import numpy as np

#create NumPy array
arr = np. arange ( 24 ). reshape ( 6,4 )

#view NumPy array
print (arr)

[[ 0 1 2 3]
 [4 5 6 7]
 [8 9 10 11]
 [12 13 14 15]
 [16 17 18 19]
 [20 21 22 23]]

Пример 1. Выберите определенные строки 2D-массива NumPy.

Мы можем использовать следующий синтаксис для выбора строк в индексных позициях со 2 по 5:

 #select rows in index positions 2 through 5
arr[ 2 : 5 ,:]

array([[ 8, 9, 10, 11],
       [12, 13, 14, 15],
       [16, 17, 18, 19]])

Обратите внимание, что синтаксис 2:5 указывает NumPy выбирать строки со 2 по 5, но не включает 5.

Таким образом, этот синтаксис выбирает все значения из строк с позициями индекса 2, 3 и 4.

Пример 2. Выбор определенных столбцов из 2D-массива NumPy.

Мы можем использовать следующий синтаксис для выбора столбцов в позициях индекса от 1 до 3:

 #select columns in index positions 1 through 3
arr[, 1 : 3 ]

array([[ 1, 2],
       [5, 6],
       [9, 10],
       [13, 14],
       [17, 18],
       [21, 22]]))

Обратите внимание, что синтаксис 1:3 указывает NumPy выбирать столбцы с 1 по 3, но не включает 3.

Таким образом, этот синтаксис выбирает все значения из столбцов с индексными позициями 1 и 2.

Пример 3. Выбор определенных строк и столбцов 2D-массива NumPy.

Мы можем использовать следующий синтаксис для выбора строк в позициях индекса со 2 по 5 и столбцов в позициях индекса с 1 по 3:

 #select rows in 2:5 and columns in 1:3
arr[ 2 : 5,1 :3 ]

array([[ 9, 10],
       [13, 14],
       [17, 18]])

Этот синтаксис возвращает все значения в 2D-массиве NumPy между позициями индекса строки со 2 по 5 и позициями индекса столбца с 1 по 3.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные операции в NumPy:

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

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

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