
Cet article décrit comment créer un tableau NumPy vide non initialisé ndarray.
- numpy.empty()
- Spécifiez la forme (nombre de lignes, de colonnes, etc.) et le dtype
- numpy.empty_like()
- Créer avec la même forme et le même type que le tableau existant
Bien qu’il soit appelé « vide », les valeurs stockées dans la mémoire allouée sont lues, de sorte que le tableau créé a des valeurs aléatoires.
Si vous souhaitez générer ndarray en initialisant tous les éléments avec 0, 1 ou n’importe quelle valeur, consultez l’article suivant.
Créez un ndarray vide avec numpy.empty()
Pour créer un tableau vide en spécifiant la forme et le dtype, utilisez numpy.empty().
Spécifiez la forme du tableau à créer.
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]]
Par défaut, dtype est float64. Vous pouvez également le spécifier avec l’argument 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
Consultez l’article suivant pour plus d’informations sur le type de données dtype dans NumPy.
Créez un ndarray vide avec numpy.empty_like()
Pour créer un tableau vide avec la même forme et le même dtype qu’un tableau existant, utilisez numpy.empty_like().
Spécifiez une baie existante. Le dtype du tableau créé est le même que le dtype du tableau d’origine.
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]]
Vous pouvez également spécifier un type avec l’argument dtype.
print(np.empty_like(a_float, dtype=np.int))
# [[0 1 2]
# [3 4 5]]