Heim >Backend-Entwicklung >Python-Tutorial >Wie kann man mit NumPy effizient einen gleitenden Durchschnitt in Python berechnen?
Berechnung des gleitenden / gleitenden Durchschnitts in Python mit NumPy / SciPy
Trotz der umfangreichen Funktionalität von NumPy und SciPy kann die Berechnung eines gleitenden Durchschnitts problemlos erfolgen eine überraschend komplexe Aufgabe. Dieser Artikel befasst sich mit dem Problem, indem er eine einfach zu implementierende Lösung mit NumPys np.cumsum bereitstellt.
Einfachste Möglichkeit, den gleitenden Durchschnitt mit NumPy zu implementieren
Für eine einfache Lösung -gewichteter gleitender Durchschnitt, np.cumsum bietet eine effiziente Lösung:
def moving_average(a, n=3): ret = np.cumsum(a, dtype=float) ret[n:] = ret[n:] - ret[:-n] return ret[n - 1:] / n
Leistung und Einfachheit
Diese Methode bietet hohe Leistung, da sie das optimierte np.cumsum von NumPy nutzt Funktion, die in bestimmten Fällen FFT-basierte Methoden übertrifft. Darüber hinaus vermeidet es potenzielle Fehler, die mit komplexen Algorithmen verbunden sind, was es äußerst zuverlässig macht.
Rational für den Ausschluss der Funktionalität des gleitenden Durchschnitts in NumPy
Trotz seines offensichtlichen Nutzens kann dies der Fall sein Gültige Gründe für den Ausschluss der Funktionalität des gleitenden Durchschnitts aus dem NumPy-Kern:
Das obige ist der detaillierte Inhalt vonWie kann man mit NumPy effizient einen gleitenden Durchschnitt in Python berechnen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!