Quelqu'un sait-il comment extraire une colonne d'un tableau multidimensionnel en Python ?
Réponses
Trop de publicités?>>> import numpy as np
>>> A = np.array([[1,2,3,4],[5,6,7,8]])
>>> A
array([[1, 2, 3, 4],
[5, 6, 7, 8]])
>>> A[:,2] # returns the third columm
array([3, 7])
Voir aussi : "numpy.arange" et "reshape" pour allouer de la mémoire.
Exemple : (Allocation d'un tableau avec une forme de matrice (3x4))
nrows = 3
ncols = 4
my_array = numpy.arange(nrows*ncols, dtype='double')
my_array = my_array.reshape(nrows, ncols)
Se pourrait-il que vous utilisiez un Tableau NumPy ? Python a le array mais qui ne prend pas en charge les tableaux multidimensionnels. Les listes Python normales sont également unidimensionnelles.
Cependant, si vous avez une simple liste à deux dimensions comme celle-ci :
A = [[1,2,3,4],
[5,6,7,8]]
alors vous pouvez extraire une colonne comme ceci :
def column(matrix, i):
return [row[i] for row in matrix]
Extraction de la deuxième colonne (index 1) :
>>> column(A, 1)
[2, 6]
Ou alternativement, simplement :
>>> [row[1] for row in A]
[2, 6]
- Réponses précédentes
- Plus de réponses