
È possibile ottenere il numero di dimensioni, forma (lunghezza di ciascuna dimensione) e dimensione (numero di tutti gli elementi) dell’array NumPy con gli attributi ndim, shape e size di numpy.ndarray. La funzione incorporata len() aggiunge la dimensione della prima dimensione.
- Numero di dimensioni dell’array NumPy:
ndim
- Forma dell’array NumPy:
shape
- Dimensione dell’array NumPy:
size
- Dimensione della prima dimensione dell’array NumPy:
len()
Utilizzare i seguenti array da uno a tre dimensioni come esempi.
import numpy as np
a_1d = np.arange(3)
print(a_1d)
# [0 1 2]
a_2d = np.arange(12).reshape((3, 4))
print(a_2d)
# [[ 0 1 2 3]
# [ 4 5 6 7]
# [ 8 9 10 11]]
a_3d = np.arange(24).reshape((2, 3, 4))
print(a_3d)
# [[[ 0 1 2 3]
# [ 4 5 6 7]
# [ 8 9 10 11]]
#
# [[12 13 14 15]
# [16 17 18 19]
# [20 21 22 23]]]
Numero di dimensioni dell’array NumPy:ndim
È possibile ottenere il numero di dimensioni dell’array NumPy come valore intero int con l’attributo ndim di numpy.ndarray.
print(a_1d.ndim)
# 1
print(type(a_1d.ndim))
# <class 'int'>
print(a_2d.ndim)
# 2
print(a_3d.ndim)
# 3
Se vuoi aggiungere una nuova dimensione, usa numpy.newaxis o numpy.expand_dims(). Vedere il seguente articolo per i dettagli.
Forma dell’array NumPy:shape
Puoi ottenere la forma (= lunghezza di ciascuna dimensione) dell’array NumPy come una tupla con l’attributo shape di numpy.ndarray.
Anche nel caso di un array unidimensionale, è una tupla con un elemento invece di un valore intero. Nota che una tupla con un elemento ha una virgola finale.
print(a_1d.shape)
# (3,)
print(type(a_1d.shape))
# <class 'tuple'>
print(a_2d.shape)
# (3, 4)
print(a_3d.shape)
# (2, 3, 4)
Ad esempio, nel caso di una matrice bidimensionale, la forma è (numero di righe, numero di colonne). Se vuoi ottenere solo il numero di righe o colonne, puoi ottenere ogni elemento della tupla.
print(a_2d.shape[0])
# 3
print(a_2d.shape[1])
# 4
Puoi anche decomprimerli e assegnarli a variabili diverse.
row, col = a_2d.shape
print(row)
# 3
print(col)
# 4
Usa reshape() per la forma. Vedere il seguente articolo per i dettagli.
Dimensione dell’array NumPy:size
Puoi ottenere la dimensione (= numero totale di elementi) dell’array NumPy con l’attributo size di numpy.ndarray.
print(a_1d.size)
# 3
print(type(a_1d.size))
# <class 'int'>
print(a_2d.size)
# 12
print(a_3d.size)
# 24
Dimensione della prima dimensione dell’array NumPy:len()
len() è la funzione incorporata in Python che contiene il numero di elementi in un elenco o il numero di caratteri in una stringa.
Per numpy.ndarray, len() fornisce la dimensione della prima dimensione. Equivalente a shape[0] e anche uguale a size solo per array unidimensionali.
print(len(a_1d))
# 3
print(a_1d.shape[0])
# 3
print(a_1d.size)
# 3
print(len(a_2d))
# 3
print(a_2d.shape[0])
# 3
print(len(a_3d))
# 2
print(a_3d.shape[0])
# 2