Come tagliare un array numpy 2d (con esempi)
È possibile utilizzare i seguenti metodi per suddividere un array NumPy 2D:
Metodo 1: seleziona righe specifiche nell’array 2D NumPy
#select rows in index positions 2 through 5 arr[ 2 : 5 ,:]
Metodo 2: selezionare colonne specifiche nella tabella NumPy 2D
#select columns in index positions 1 through 3 arr[:, 1 : 3 ]
Metodo 3: selezionare righe e colonne specifiche nella tabella 2D NumPy
#select rows in range 2:5 and columns in range 1:3 arr[ 2 : 5,1 :3 ]
I seguenti esempi mostrano come utilizzare ciascun metodo nella pratica con il seguente array 2D 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]]
Esempio 1: seleziona righe specifiche di un array 2D NumPy
Possiamo utilizzare la seguente sintassi per selezionare le righe nelle posizioni dell’indice da 2 a 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]])
Nota che la sintassi 2:5 dice a NumPy di selezionare le righe da 2 a 5, ma non include 5.
Quindi questa sintassi seleziona tutti i valori dalle righe con posizioni di indice 2, 3 e 4.
Esempio 2: seleziona colonne specifiche dall’array 2D NumPy
Possiamo utilizzare la seguente sintassi per selezionare le colonne nelle posizioni dell’indice da 1 a 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]]))
Tieni presente che la sintassi 1:3 indica a NumPy di selezionare le colonne da 1 a 3, ma non include 3.
Quindi questa sintassi seleziona tutti i valori dalle colonne con posizioni di indice pari a 1 e 2.
Esempio 3: seleziona righe e colonne specifiche dell’array 2D NumPy
Possiamo utilizzare la seguente sintassi per selezionare le righe nelle posizioni dell’indice da 2 a 5 e le colonne nelle posizioni dell’indice da 1 a 3:
#select rows in 2:5 and columns in 1:3 arr[ 2 : 5,1 :3 ] array([[ 9, 10], [13, 14], [17, 18]])
Questa sintassi restituisce tutti i valori nell’array 2D NumPy tra le posizioni dell’indice delle righe da 2 a 5 e le posizioni dell’indice delle colonne da 1 a 3.
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre operazioni comuni in NumPy:
Come trovare l’indice dei valori nell’array NumPy
Come ottenere una colonna specifica da un array NumPy
Come aggiungere una colonna a un array NumPy