Maison > Article > développement back-end > Comment calculer efficacement une moyenne mobile en Python avec NumPy ?
Calcul de la moyenne mobile / mobile en Python avec NumPy / SciPy
Malgré les fonctionnalités étendues de NumPy et SciPy, le calcul d'une moyenne mobile peut être une tâche étonnamment complexe. Cet article aborde le problème en fournissant une solution facile à mettre en œuvre à l'aide de np.cumsum de NumPy.
Le moyen le plus simple d'implémenter la moyenne mobile avec NumPy
Pour un simple non -moyenne mobile pondérée, np.cumsum fournit une solution efficace :
def moving_average(a, n=3): ret = np.cumsum(a, dtype=float) ret[n:] = ret[n:] - ret[:-n] return ret[n - 1:] / n
Performance et simplicité
Cette méthode offre des performances élevées car elle exploite le np.cumsum optimisé de NumPy fonction, surpassant les méthodes basées sur la FFT dans certains cas. De plus, il évite les erreurs potentielles associées aux algorithmes complexes, ce qui le rend très fiable.
Rationnelle pour l'exclusion de la fonctionnalité de moyenne mobile dans NumPy
Malgré son utilité apparente, il peut y avoir raisons valables pour exclure la fonctionnalité de moyenne mobile du noyau NumPy :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!