Pourquoi NumPy n'a-t-il pas de fonction intégrée pour calculer les moyennes mobiles ?

Mary-Kate Olsen
Libérer: 2024-11-15 14:14:03
original
642 Les gens l'ont consulté

Why Doesn't NumPy Have a Built-in Function for Calculating Moving Averages?

Calcul de la moyenne mobile / mobile avec Python NumPy / SciPy

malgré l'utilité des moyennes mobiles dans l'analyse des séries chronologiques, NumPy et SciPy ne le font pas proposent une fonction autonome à cet effet, soulevant des questions sur la justification de cette omission.

Implémentation de la moyenne mobile dans NumPy

Une approche simple pour implémenter la moyenne mobile dans NumPy est via la fonction np.cumsum, qui accumule les éléments d'un tableau. Le tableau de somme résultant peut ensuite être découpé de manière appropriée pour obtenir la moyenne mobile.

def moving_average(a, n=3):
    ret = np.cumsum(a, dtype=float)
    ret[n:] = ret[n:] - ret[:-n]
    return ret[n - 1:] / n
Copier après la connexion

Cette méthode est relativement rapide et évite les solutions alambiquées sujettes aux erreurs.

Raison du manque de Fonctionnalités incluses dans les piles

Malgré l'apparente simplicité de la mise en œuvre de la moyenne mobile, la raison de son absence dans la fonctionnalité de base de NumPy est probablement liée à la nature spécialisée de ces opérations. NumPy se concentre sur la fourniture d'opérations numériques fondamentales, tandis que les algorithmes spécialisés tels que l'analyse de séries chronologiques sont souvent laissés à des packages dédiés. Cette approche permet à NumPy de conserver ses fonctionnalités de base et évite de le surcharger avec des outils de niche.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal