Comment élever un tableau numpy à un pouvoir? (correspondant à des multiplications matricielles répétées, pas à des éléments)
Je veux soulever un 2-dimensions numpy array
nous allons l'appeler A
à la puissance d'un nombre n
mais j'ai à ce jour pas réussi à trouver la fonction ou à l'opérateur de le faire.
Je suis conscient que je pourrais le jeter à la matrix
type et utiliser le fait que, puis (similaire à ce qui serait le comportement dans Matlab), A**n
fait exactement ce que je veux, (pour array
la même expression signifie elementwise exponentiation). Casting pour matrix
et à l'arrière semble être assez laid solution de contournement.
Il doit sûrement être un bon moyen pour effectuer ce calcul, tout en gardant le format de array
?
source d'informationauteur mirari | 2011-02-16
Vous devez vous connecter pour publier un commentaire.
Je crois que vous voulez
numpy.linalg.matrix_power
Comme un exemple rapide:
Cela donne:
La fonction opencv cvPow semble être d'environ 3 à 4 fois plus rapide sur mon ordinateur lors de la récolte d'un nombre rationnel.
Voici un exemple de fonction (vous devez avoir le pyopencv module installé):