Envoyé par
myaxto
Je ne pensais pas avoir fait une matrice à 2 dimensions ... Mais du coup je ne comprend pas pourquoi ma matrice M n'est pas que à 1 dimension.
Suffit de regarder le nombre de crochet imbriqué.
1 2 3 4
| A1=np.array([1,2,3])
print(A1.shape)
A2=np.array([[1,2,3]])
print(A2.shape) |
Envoyé par
myaxto
Mais dans mon cas je veux transférer une liste ou pour chaque item j'ai (XXXXX,XXXX) donc je voudrais 2 colonnes.
Donc là en effet tu aurais bien une matrice. Mais dans ce cas si les lignes sont en colonne et vice verca alors il suffit de la transposer (avec np.transpose(la_matrice)) avant de faire la sortie toute simple.
Après si je regarde le code, comme vous ne savez pas trop comment manipuler vos listes entre elles, le plus facile (et qui est mieux à faire quand on bosse avec numpy) ca serait de procéder un peu dans l'autre sens. C'est à dire qu'aulieu de chercher à créer plein de petit bout d'informations qu'ensuite vous essayer d'assembler dans un seul et même gros bloc, et bien faites l'inverse ! Créer d'abord votre bloc (disons une matrice, remplie de zéros, avec déjà 2 colonnes et le nombre de lignes qu'il vous faut)
data = np.zeros((1800,2))
Ensuite remplisser le, en itérant :
1 2 3
| for i in range(1800):
data[i,0] = ### blabla, le nombre qu'il faut dans la premiere colonne
data[i,1] = ### blabla, l'autre nombre qu'il faut dans la deuxieme colonne |
Là en plus ca vous garanti que vous n'aurez pas de problème de dépassement de tableau (type IndexError), et vous aurez juste à sortir votre matrice dans un fichier de manière tout con :
np.savetxt('sortie.txt',data)
Partager