J'ai une liste 2D quelque chose comme
a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
et je veux le convertir en un tableau numpy 2D. Pouvons-nous le faire sans allouer de mémoire comme
numpy.zeros((3,3))
puis y stocker des valeurs?
Il suffit de passer la liste à np.array
:
a = np.array(a)
Vous pouvez également saisir cette opportunité pour définir le dtype
si la valeur par défaut n’est pas celle que vous souhaitez.
a = np.array(a, dtype=...)
J'utilise des ensembles de données volumineux exportés vers un fichier python sous la forme
XVals1 = [.........]
XVals2 = [.........]
Chaque liste est de longueur identique. j'utilise
>>> a1 = np.array(SV.XVals1)
>>> a2 = np.array(SV.XVals2)
Ensuite
>>> A = np.matrix([a1,a2])
np.array()
est encore plus puissant que ce que l'unutbu a dit plus haut. Vous pouvez également l'utiliser pour convertir une liste de tableaux np en un tableau de dimensions supérieures, voici un exemple simple:
aArray=np.array([1,1,1])
bArray=np.array([2,2,2])
aList=[aArray, bArray]
xArray=np.array(aList)
la forme de xArray est (2,3), c'est un tableau np standard. Cette opération évite une programmation en boucle.
il suffit d'utiliser le code suivant
c = np.matrix([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
matrix([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
Ensuite, il vous donnera
vous pouvez vérifier la forme et la dimension de la matrice en utilisant le code suivant
forme
c.ndim