Heim > Backend-Entwicklung > Python-Tutorial > Wie berechnet man einen laufenden Mittelwert in Python mit SciPy oder NumPy?

Wie berechnet man einen laufenden Mittelwert in Python mit SciPy oder NumPy?

Patricia Arquette
Freigeben: 2024-11-22 19:52:16
Original
221 Leute haben es durchsucht

How to Calculate a Running Mean in Python Using SciPy or NumPy?

Ermitteln des laufenden Mittelwerts in Python

In Python kann die Berechnung des laufenden Mittelwerts eines 1D-Arrays für ein bestimmtes Fenster mit SciPy erreicht werden oder NumPy-Funktionen.

Verwenden SciPy

Wenn SciPy verfügbar ist, können Sie die Funktion scipy.signal.convolve verwenden:

from scipy.signal import convolve

running_mean = convolve(array, np.ones(window) / window, mode='valid')
Nach dem Login kopieren

Dies ist gegebenenfalls die bevorzugte Methode, da sie im Allgemeinen effizient ist klar definiertes Verhalten, und vor allem, weil es sehr allgemein ist.

Verwenden NumPy

Wenn Sie nur NumPy haben, können Sie dessen np.convolve-Funktion verwenden:

running_mean = np.convolve(array, np.ones(window) / window, mode='valid')
Nach dem Login kopieren

Np.convolve verstehen

Die Kernoperation hier ist die Faltung. Die Faltung wird normalerweise als einzelne mathematische Summe über das Produkt von Teilen zweier Signale ausgedrückt. Die Interpretation in diesem Fall ist, dass wir die Fensteranteile mit den Koeffizienten (1/Fenster, 1/Fenster, ..., 1/Fenster) multiplizieren, die den in der Mittelwertformel verwendeten Gewichtungen entsprechen, und dann summieren über dem Produkt.

Bearbeitung von Kanten

Das mode-Argument von np.convolve steuert, wie mit Kanten umgegangen wird. „valid“ entfernt alle Kanteneffekte, indem nur der Teil einbezogen wird, in dem jedes Fenster vollständig in das Array passt. „same“ fügt den Kanten Nullen hinzu, um das Ausgabearray auf die gleiche Länge wie das Eingabearray zu bringen, und „full“ fügt Nullenauffüllung hinzu um das Ausgabearray so lang wie die Summe aus Fensterlänge und Eingabelänge minus eins zu machen. Die Wahl des Modus hängt von Ihren spezifischen Anforderungen ab.

Das obige ist der detaillierte Inhalt vonWie berechnet man einen laufenden Mittelwert in Python mit SciPy oder NumPy?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage