Supposons que j'ai un tableau et mxn. Je veux passer chaque colonne de ce tableau à une fonction pour effectuer une opération sur toute la colonne. Comment parcourir les colonnes du tableau?
Par exemple, j'ai un tableau 4 x 3 comme
1 99 2
2 14 5
3 12 7
4 43 1
for column in array:
some_function(column)
où la colonne serait "1,2,3,4" dans la première itération, "99,14,12,43" dans la seconde et "2,5,7,1" dans la troisième.
Réponses:
Répétez simplement la transposition de votre tableau:
la source
array.T
n'est pas coûteux, car cela change simplement les `` enjambées '' dearray
(voir cette réponse pour une discussion intéressante)Cela devrait vous donner un bon départ
la source
Pour un tableau en trois dimensions, vous pouvez essayer:
Consultez la documentation sur son
array.transpose
fonctionnement. En gros, vous spécifiez la dimension à décaler. Dans ce cas, nous déplaçons la deuxième dimension (par exemple les colonnes) vers la première dimension.la source
la source
Vous pouvez également utiliser unzip pour parcourir les colonnes
la source
Par exemple, vous voulez trouver une moyenne de chaque colonne dans la matrice. Créons la matrice suivante
La fonction de la moyenne est
Pour faire ce qui est nécessaire et stocker le résultat dans les `` résultats '' du vecteur deux-points
Les résultats sont: array ([4.33333333, 5., 5.66666667, 4.])
la source
Vous pouvez également utiliser
enumerate
. Il vous donne également le numéro de colonne et les valeurs de colonne.la source