Numpy Moving Average Funktion
Hmmm, es scheint, diese quoteasy zu implementieren Funktion ist eigentlich ziemlich einfach, falsch zu werden und hat eine gute Diskussion über Speicher Effizienz gefördert. Ich bin glücklich, mich aufzuräumen, wenn es bedeutet, dass etwas richtig gemacht wurde. Ndash Richard Sep 20 14 at 19:23 NumPys Mangel an einer bestimmten Domain-spezifischen Funktion ist vielleicht aufgrund der Core Teams Disziplin und Treue zu NumPys Prime Directive: bieten einen N-dimensionalen Array-Typ. Sowie Funktionen zum Erstellen und Indizieren dieser Arrays. Wie viele grundlegende Ziele, ist dieses nicht klein, und NumPy macht es brillant. Die (viel) größere SciPy enthält eine viel größere Sammlung von domänenspezifischen Bibliotheken (sogenannte Subpackages von SciPy Devs) - zum Beispiel numerische Optimierung (Optimierung), Signalverarbeitung (Signal) und Integralrechnung (integrieren). Meine Vermutung ist, dass die Funktion, die Sie nachher sind, in mindestens einem der SciPy-Unterpakete (scipy. signal vielleicht) aber ich würde zuerst in der Sammlung von SciPy Scikits aussehen. Identifizieren Sie die relevanten scikit (s) und suchen Sie die Funktion von Interesse dort. Scikits sind eigenständig entwickelte Pakete, die auf NumPySciPy basieren und auf eine bestimmte technische Disziplin gerichtet sind (zB Scikits-Image, Scikits-Learn etc.). Mehrere davon waren (vor allem die großartige OpenOpt für numerische Optimierung) hoch angesehene, reife Projekte lang Bevor er sich unter der relativ neuen scikits Rubrik wohnte. Die Scikits Homepage gern oben aufgelistet etwa 30 solcher Scikits. Obwohl zumindest einige von ihnen nicht mehr aktiv sind. Nach diesem Rat würde Sie zu scikits-timeseries führen, aber dieses Paket ist nicht mehr unter aktiver Entwicklung In Wirklichkeit ist Pandas geworden, AFAIK, die de facto NumPy-basierte Zeitreihenbibliothek. Pandas hat mehrere Funktionen, die verwendet werden können, um einen gleitenden Durchschnitt zu berechnen, das einfachste von diesen ist wahrscheinlich rollingmean. Die du so nimmst: Nun nenn einfach die Funktion rollingmean, die im Series-Objekt vorbeifährt und eine Fenstergröße. Die in meinem Beispiel unten ist 10 Tage. Überprüfen Sie, ob es funktioniert - z. B. Verglichene Werte 10 - 15 in der Originalreihe gegen die neue Serie geglättet mit rollenden Mittel Die Funktion Rollingmean, zusammen mit etwa einem Dutzend oder so anderen Funktion sind informell in der Pandas Dokumentation unter dem Rubrik beweglichen Fenster Funktionen eine zweite, verwandte Gruppe von Funktionen gruppiert In Pandas wird als exponentiell gewichtete Funktionen bezeichnet (zB ewma, die exponentiell verschobenen gewichteten Mittelwert berechnet). Die Tatsache, dass diese zweite Gruppe nicht in die erste (bewegte Fensterfunktionen) eingeschlossen ist, liegt vielleicht daran, dass die exponentiell gewichteten Transformationen nicht auf ein Fenster mit fester Länge angewiesen sind. Die folgenden Beispiele erzeugen einen gleitenden Durchschnitt der vorangegangenen WINDOW-Werte. Wir schneiden die ersten (WINDOW -1) Werte ab, da wir den Durchschnitt vor ihnen finden können. (Das Standardverhalten für die Faltung ist, dass die Werte vor dem Beginn unserer Sequenz 0 sind). (Formalerweise konstruieren wir die Sequenz y für die Folge x, wobei yi (xi x (i1) 8230. x (in)) n) Dies macht die numpy8217s-Faltungsfunktion aus. Dies ist ein allgemeiner bewegter durchschnittlicher Betrieb. Das Ändern von Gewichtungen macht einige Werte wichtiger, die Kompensation in geeigneter Weise ermöglicht es Ihnen, durchschnittlich wie um Punkt statt vor Punkt zu sehen. Anstatt die Werte zu verkürzen, können wir die anfänglichen Werte festlegen, wie in diesem Beispiel dargestellt: Wir haben zuvor eingeführt, wie man gleitende Durchschnitte mit Python erstellt. Dieses Tutorial wird eine Fortsetzung dieses Themas sein. Ein gleitender Durchschnitt im Kontext der Statistik, auch Rollingrunning-Durchschnitt genannt, ist eine Art von endlicher Impulsantwort. In unserem vorherigen Tutorial haben wir die Werte der Arrays x und y gezeichnet: Let8217s plot x gegen den gleitenden Durchschnitt von y, den wir yMA nennen werden: Erstens, let8217s entlasten die Länge beider Arrays: Und um dies im Kontext zu zeigen: Das Ergebnis Grafisch: Um dies zu verstehen, lassen Sie sich von den verschiedenen Beziehungen unterscheiden: x vs y und x vs MAY: Der gleitende Durchschnitt hier ist die grüne Handlung, die bei 3 beginnt: Teilen Sie diese: Wie folgt: Post Navigation Hinterlasse eine Antwort Antwort abbrechen Sehr nützlich I Möchte den letzten Teil auf großen Datensätzen lesen Hoffe, es wird bald kommen8230 d Blogger wie folgt:
Comments
Post a Comment