Sunday 19 February 2017

Moving Average And Faltung

Ich schreibe eine gleitende durchschnittliche Funktion, die die Faltungsfunktion in numpy, die gleichbedeutend mit einem gewichteten gleitenden Durchschnitt sein sollte. Wenn meine Gewichte alle gleich sind, wie in einem einfachen arithmetischen Durchschnitt, funktioniert es gut. Jedoch, wenn ich versuche, eine gewichtete zu verwenden Durchschnittlich stattdessen für die gleichen Daten 3 667,4 667,5 667,6 667 Ich erwarte, bekomme ich. Wenn ich die gültige Fahne entferne, sehe ich gar nicht die richtigen Werte, die ich gern für die WMA sowie MA, da es den Code sauberer gleichen Code, verschiedene Gewichte und sonst ich denke, ich werde durch alle Daten durchlaufen und nehmen Scheiben. Jede Ideen über dieses Verhalten. Mit MATLAB, wie kann ich die 3-Tage finden Gleitenden Durchschnitt einer bestimmten Spalte einer Matrix und fügen Sie den gleitenden Durchschnitt zu dieser Matrix Ich versuche, den 3-Tage gleitenden Durchschnitt von unten nach oben der Matrix zu berechnen, die ich meinen Code zur Verfügung gestellt habe. Angesichts der folgenden Matrix a und mask. I Ich habe versucht, den Conv-Befehl zu implementieren, aber ich empfange einen Fehler Hier ist der Conv-Befehl I h Ich habe versucht, auf der 2. Spalte der Matrix a zu verwenden. Die Ausgabe, die ich wünsche, ist in der folgenden Matrix gegeben. Wenn Sie irgendwelche Vorschläge haben, würde ich es sehr schätzen Danke. Für Spalte 2 der Matrix a, ich berechnen die 3 - Tag gleitenden Durchschnitt wie folgt und Platzierung des Ergebnisses in Spalte 4 der Matrix a Ich benannte Matrix a wie gewünschtOutput nur zur Veranschaulichung Der 3-Tages-Durchschnitt von 17, 14, 11 ist 14 der 3-Tages-Durchschnitt von 14, 11, 8 ist 11 Der 3-Tages-Durchschnitt von 11, 8, 5 ist 8 und der 3-Tages-Durchschnitt von 8, 5, 2 ist 5 Es gibt keinen Wert in den unteren 2 Reihen für die 4. Spalte, weil die Berechnung für die 3-Tage-Bewegung Durchschnittlicher Anfang an der Unterseite Die gültige Ausgabe wird nicht angezeigt, bis mindestens 17, 14 und 11 Hoffentlich ist dies sinnvoll Aaron Jun 12 13 bei 1 28. Im Allgemeinen würde es helfen, wenn Sie den Fehler zeigen In diesem Fall tun Sie Zwei Dinge falsch. Erste Ihre Faltung muss durch drei oder die Länge der gleitenden Durchschnitt geteilt werden. Zweitens bemerken die Größe von c Sie können nicht einfach passen c in a Die Typische Art, einen gleitenden Durchschnitt zu bekommen, wäre, dasselbe zu verwenden. Aber das sieht nicht so aus, wie du willst. Stattdessen bist du gezwungen, ein paar Zeilen zu benutzen.29 September, 2013.Moving Durchschnitt durch Faltung. Was ist gleitender Durchschnitt und was Ist es gut für. Wie ist bewegte Mittelung durch die Verwendung von Faltung durchgeführt. Moving Durchschnitt ist eine einfache Operation verwendet in der Regel zu unterdrücken Rauschen eines Signals setzen wir den Wert jedes Punktes auf den Durchschnitt der Werte in seiner Nachbarschaft Von einem formula. Here x Ist die Eingabe und y ist das Ausgangssignal, während die Größe des Fensters w ist, soll ungerade sein. Die obige Formel beschreibt eine symmetrische Operation, die die Proben von beiden Seiten des tatsächlichen Punktes genommen werden. Below ist ein echtes Leben Beispiel Der Punkt Auf dem das Fenster gelegt wird eigentlich ist rot Werte außerhalb x sollen Nullen sein. Um zu spielen und sehen die Auswirkungen der gleitenden Durchschnitt, schauen Sie sich diese interaktive Demonstration. Wie, um es durch Faltung zu tun. Wie Sie vielleicht erkannt haben, Die Berechnung des einfachen gleitenden Durchschnitts ist Ähnlich wie die Faltung in beiden Fällen ein Fenster wird entlang des Signals verschoben und die Elemente im Fenster sind zusammengefasst Also, geben Sie es versuchen, dasselbe zu tun, indem Sie Faltung verwenden Verwenden Sie die folgenden Parameter. Die gewünschte Ausgabe ist. Als erster Ansatz, Lassen Sie uns versuchen, was wir bekommen, indem wir das x-Signal durch den folgenden k-Kernel ausfüllen. Die Ausgabe ist genau dreimal größer als die erwartete Es kann auch gesehen werden, dass die Ausgangswerte die Zusammenfassung der drei Elemente im Fenster sind Während der Faltung wird das Fenster entlanggeschoben, alle Elemente in ihm werden mit einem multipliziert und dann zusammengefasst. Yk 1 cdot x 1 cdot x 1 cdot x. Um die gewünschten Werte von y zu erhalten, wird die Ausgabe durch 3.By eine Formel einschließlich der Division geteilt. Aber wäre es nicht optimal, die Division während der Faltung zu machen Hier kommt die Idee von Um die Gleichung neu zu ordnen. So werden wir den folgenden k Kernel verwenden. Auf diese Weise erhalten wir die gewünschte Ausgabe. Im Allgemeinen, wenn wir gleitenden Durchschnitt durch Faltung mit einer Fenstergröße von w wollen, werden wir den folgenden k kernel verwenden. Einfach Funktion, die den gleitenden Durchschnitt durchführt. Ein Beispiel ist der Gebrauch.


No comments:

Post a Comment