
Questo articolo descrive come creare una matrice NumPy vuota non inizializzata ndarray.
- numpy.vuoto()
- Specificare la forma (numero di righe, colonne, ecc.) e dtype
- numpy.empty_like()
- Crea con la stessa forma e dtype dell’array esistente
Sebbene sia chiamato “vuoto”, i valori archiviati nella memoria allocata vengono letti, quindi l’array creato ha valori casuali.
Se si desidera generare ndarray inizializzando tutti gli elementi con 0, 1 o valore, vedere il seguente articolo.
Crea un ndarray vuoto con numpy.empty()
Per creare un array vuoto con la specifica di shape e dtype, usa numpy.empty().
Specificare la forma della matrice da creare.
import numpy as np
print(np.empty(3))
# [ -3.10503618e+231 -3.10503618e+231 -3.10503618e+231]
print(np.empty((2, 3)))
# [[ -3.10503618e+231 2.68677888e+154 6.92663118e-310]
# [ 1.06099790e-313 6.92663119e-310 4.17211958e-309]]
Per configurazione predefinita, dtype è float64. Puoi anche specificarlo con l’argomento dtype.
print(np.empty(3).dtype)
# float64
print(np.empty(3, dtype=np.int))
# [-1152921504606846976 -1152921504606846976 -1152921504606846974]
print(np.empty(3, dtype=np.int).dtype)
# int64
Per ulteriori informazioni sul tipo di dati dtype in NumPy, vedere l’articolo seguente.
Crea un ndarray vuoto con numpy.empty_like()
Per creare un array vuoto con la stessa forma e dtype di un array esistente, usa numpy.empty_like().
Specificare una matrice esistente. Il dtype dell’array creato è lo stesso del dtype dell’array originale.
a_int = np.arange(6).reshape((2,3))
print(a_int)
# [[0 1 2]
# [3 4 5]]
print(np.empty_like(a_int))
# [[8070450532247928832 6917537789928580555 140196575903747]
# [ 21474836480 140196576086528 844446404968448]]
a_float = np.arange(6).reshape((2,3)) / 10
print(a_float)
# [[ 0. 0.1 0.2]
# [ 0.3 0.4 0.5]]
print(np.empty_like(a_float))
# [[ 0.00000000e+000 4.94065646e-324 9.88131292e-324]
# [ 1.48219694e-323 1.97626258e-323 2.47032823e-323]]
Puoi anche specificare un tipo con l’argomento.
print(np.empty_like(a_float, dtype=np.int))
# [[0 1 2]
# [3 4 5]]
