Moyenne sur tous les N éléments d'un tableau numpy

J'ai un tableau numpy. Je veux créer un nouveau tableau qui est la moyenne, sur chaque troisième élément. Donc, le nouveau tableau sera un tiers de la taille de l'original.

À titre d'exemple:

 np.array([1,2,3,1,2,3,1,2,3])

Devrait renvoyer le tableau:

 np.array([2,2,2])

Quelqu'un peut-il suggérer un moyen efficace de le faire? Je suis de dessin blancs.

27
demandé sur Seanny123 2013-04-11 22:37:28

1 réponses

Si votre matrice arr a une longueur divisible par 3:

np.mean(arr.reshape(-1, 3), axis=1)

Le remodelage en un tableau de dimensions supérieures, puis l'exécution d'une certaine forme d'opération de réduction sur l'une des dimensions supplémentaires est un aliment de base de la programmation numpy.

47
répondu Jaime 2013-04-11 18:39:30