Trouver la moyenne courante en Python
En Python, le calcul de la moyenne courante d'un tableau 1D pour une fenêtre spécifique peut être réalisé à l'aide de SciPy ou les fonctions NumPy.
Utilisation SciPy
Si SciPy est disponible, vous pouvez utiliser la fonction scipy.signal.convolve :
from scipy.signal import convolve running_mean = convolve(array, np.ones(window) / window, mode='valid')
C'est la méthode préférée, le cas échéant, car généralement elle est efficace, a comportement bien défini, et surtout parce qu'il est très général.
Utiliser NumPy
Si vous n'avez que NumPy, vous pouvez utiliser sa fonction np.convolve :
running_mean = np.convolve(array, np.ones(window) / window, mode='valid')
Comprendre np.convolve
L’opération principale ici est la convolution. La convolution est généralement exprimée comme une somme mathématique unique sur le produit de portions de deux signaux. L'interprétation dans ce cas est que nous multiplions les parties de fenêtre par les coefficients (1/fenêtre, 1/fenêtre, ..., 1/fenêtre), qui sont égaux aux poids utilisés dans la formule moyenne, puis nous additionnons sur le produit.
Gestion des bords
L'argument mode de np.convolve contrôle la façon de gérer les bords. « valid » supprime tous les effets de bord en incluant uniquement la partie où chaque fenêtre s'intègre entièrement dans le tableau, « même » ajoute des zéros aux bords pour que le tableau de sortie ait la même longueur que le tableau d'entrée, et « complet » ajoute un remplissage de zéros afin que le tableau de sortie soit aussi long que la somme de la longueur de la fenêtre et de la longueur d'entrée moins un. Le choix du mode dépend de vos besoins spécifiques.
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!