Pandas res Beispiel

Pandas res Beispiel

„Zeitreihendaten müssen häufig mit einem neuen Zeitrahmen zusammengestellt oder zusammengefasst werden. Diese Zeitreihendaten werden typischerweise mit Pandas „DataFrame" verarbeitet.resample () ”Funktion. Es ist ein praktischer Ansatz für die Resampling -Zeitreihen und die Konvertierung von Frequenzen.”

Um diese Methode zu verwenden, müssen wir der unten angegebenen Syntax folgen:

Wir werden die praktische Ausführung der Methode „Resample ()“ mit unterschiedlichen Techniken in diesem Leitfaden untersuchen.

Beispiel Nr. 1: Verwenden der Methode resample () zum Berechnen der Summe

Für die Resampling der Zeitreihendaten werden wir die PANDAS -Methode "resample ()" verwenden. Wir werden die Ausführung des Python -Skripts sehen.

Die erste und grundlegende Anforderung ist ein Tool oder eine Software, die uns eine Umgebung zur Kompilierung und Ausführung des Programms bietet. Wir haben das Spyder -Tool für die Implementierung der Beispielcodes ausgewählt. Wir haben die Spyder -Schnittstelle geöffnet; eine neue Datei mit der “.PY ”-Erdition wurde gestartet. Beginnen Sie nun, das Python -Skript zu schreiben.

Die erforderliche Ausführung des Skripts hier ist die "Pandas" -Bibliothek. Dies liegt daran, dass die Methode „resample ()“ eine Pandas -Methode ist. Um es im Skript verwenden zu können, müssen wir zuerst die Bibliothek importieren, die sie hält. Also haben wir die Pandas -Bibliothek in unsere Python -Datei geladen und „PD“ im gesamten Programm als Alias ​​von „Pandas“ verwendet.

Der Code begann mit dem Aufrufen des „PD.DATE_RANGE () ”Funktion. Es generiert einen Datumsbereich mit den bereitgestellten Grenzen. Wir erstellen einen Datumsbereich, da die Methode der PANDAS „resample ()“ in der Serie date_time funktioniert. Zwischen den Klammern der Funktion haben wir ein Datum als „2022/2/3“ definiert. Dies ist der Anfangswert des Datumsbereichs. Der zweite Parameter, "Periode", definiert die Anzahl eines Tupels für das Datum, für das wir "15" angegeben haben. Hier ist die Frequenz "D", was standardmäßig "Tag" bedeutet. Die Intervalle werden also an der Basis der Tage erzeugt. Der „PD.DATE_RANGE () ”Die Methode erstellt einen Datumsbereich von 15 Tagen. Um den Ausgangsdatumbereich zu speichern, haben wir eine Variable „Index_col“ initialisiert,. Jetzt können wir auf den Datumsbereich zugreifen, indem wir diese Variable erwähnen.

Danach müssen wir einen Pandas -Datenframe erstellen. Für den Bau eines Datenframes mit benutzerdefinierten Werten liefern Pandas uns eine Funktion „PD.DataFrame () ”. Wir haben diese Methode in unser Programm aufgerufen und sie mit 3 Spalten initialisiert, die „seltsam“, „gleichmäßig“ und „Prime“ sind. Die für jede Spalte definierten Werte haben die gleiche Länge, die 15 beträgt.

Die erste Spalte, „ungerade“, hält ungerade Zahlen als ihre Werte. Diese Werte sind "1", "3", "5", "7", "9", "11", "13", "15", "17", "19", "21", "23", "13", "15", "17", "19", "21", "23" , "25", "27" und "29". Sogar Zahlen werden in der Spalte "gleichmäßiger" als "2", "4", "6", "8", "10", "12", "14", "16", "18", "20" gespeichert. , "22", "24", "26", "28" und "30". Während die letzte Spalte "Prime" die ersten 15 Primzahlen als Werte hat: "1", "2", "3", "5", "7", "11", "13", "17" , "19", "23", "29", "31", "37", "41" und "47".

Gleich nach dem Definieren von Werten für alle Spalten im „PD.DataFrame () ”-Methode haben wir auch unsere Indexspalte festgelegt. Wir haben dies getan, indem wir die Eigenschaft "Index" des Datenrahmens verwendet und ihm die Variable "Index_col" zugewiesen haben, die die Datumsbereichserie hält. Dies bedeutet, dass wir den Datumsbereich als Indexspalte unseres Datenrahmens anstelle der Standardindexliste festlegen. Das Objekt "Zahlen" wird das Ergebnis bewahren, das erzeugt wird, wenn wir den PD aufrufen.DataFrame () ”-Funktion. Der Datenrahmen wird letztendlich durch die Verwendung der Methode „Print ()“ angezeigt. Diese Methode zeigt einfach alles, was als Eingabe in sie bereitgestellt wird. Wir haben das Objekt "Zahlen" eingegeben, um es am Terminal anzuzeigen.

Das ausgeführte Programm generiert eine Ausgabe, bei der wir sehen können, dass ein DataFrame 3 Spalten "ungerade", "gleichmäßig" und "Prime" hat, während die Indexspalte einen Datumsbereich hat, der von "2022-02-03" beginnt und endet bei „2022-02-17“, was ein 15-tägiges Intervall erzeugt.

Wir werden jetzt bei diesem Datenrahmen Resampling durchführen. Die Pandas "resample ()" funktioniert mit dem DateTimeIndex. Diese Methode nimmt Zeitreihendaten als Eingabe auf und verwandelt diese Zeitreihendaten in verschiedene definierte Frequenzen.

Für diese Abbildung werden wir die Häufigkeit des DateTimeIndex von einem 1-Tage-Intervall auf ein 2-Tage-Intervall ändern. Wir haben die „PD“ angerufen.res Beispiel ().sum () ”Methode. Die Methode „Resample ()“ deklariert die Frequenz, während die Funktion „sum ()“ die Summe der Tage für die bereitgestellte Frequenz berechnet. Wir haben den Namen des Datenrahmens als "Zahlen" mit dem "angegeben".res Beispiel ().sum () ”Methode.

Der Parameter „Regel“ wird in die Methode „resample ()“ übergeben, und sein Wert wird auf „2D“ gesetzt, was bedeutet 2 aufeinanderfolgende Tage. Der resultierende Resamplod -DataFrame wird in der Variablen „Two_days“ gespeichert. Zuletzt haben wir es auf dem Bildschirm mit der Funktion „print ()“ vorgestellt.

Hier zeigt das Ausgabebild einen erniedrigten Datenrahmen an, in dem wir 8 Datensätze haben. Die Frequenz wurde für 2D für den DateTimeIndex festgelegt, und die Wertesumme wird für ein 2D -Intervall berechnet.

Beispiel Nr. 2: Verwenden Sie die Methode resample () zur Berechnung des Mittelwerts

Die erste Demonstration verwendete die Funktion „sum ()“, um die Summe der neu abgetasteten Daten mit der Häufigkeit von 2 Tagen zu berechnen. Neben der Berechnung der Summe wenden wir auch andere Methoden mit der Methode „Resample ()“ an. In dieser Abbildung werden wir die Funktion „Mean ()“ verwenden, um den Durchschnitt der neu abgetasteten Daten mit einer wöchentlichen Frequenz zu berechnen.

Wir verwenden denselben Datenrahmen, den in der vorherigen Instanz erstellt wurde. Das „df.Die Funktion resample () ”wird mit der“ verwendet.Mean () ”Methode. Wir haben die Methode mit 2 Parametern aufgerufen; "Regel" und "geschlossen". Der Parameter „Regel“ dauert die Zeit für die erforderliche Konvertierung. Wie wir die Konvertierung in wöchentlichen Zeitreihendaten wünschen, haben wir „W“ eingegeben. für eine Woche verwendet. Der zweite Parameter, "geschlossen", ist standardmäßig für die "W" -Frequenz auf "rechts" eingestellt, aber hier haben wir ihn in "links" geändert. Dies bedeutet, dass das Intervall am linken Behälter inklusive und das Intervall am rechten Behälter eingeschränkt ist.

Dann benutzten wir das ".Mean () ”-Funktion, die den Mittelwert der Werte in wöchentlichen Intervallen berechnet. Der endgültige Datenrahmen wird von der "durchschnittlichen" Variablen gehalten. Die Funktion „print ()“ zeigt sie auf der Python -Konsole an.

Wenn wir das Python -Programm kompilieren, erhalten wir diesen Datenrahmen, der nur 3 Datensätze enthält. In jeder Spalte wurde die Durchschnittswerte für eine Woche berechnet.

Auf die gleiche Weise können wir die Frequenz in monatlich umwandeln, indem wir „M“ verwenden, für die vierteljährliche Verwendung „q“, für stündliche Verwendung „H“, für Sekunden „S“ verwendet werden, und viele andere Optionen sind nach dem Einsatz nach nach die Forderung.

Abschluss

Die Zeitreihendaten müssen manchmal in eine neue Frequenz umgewandelt werden. Pandas bieten uns eine Methode: „DF.res Beispiel () ““, um diesen Bedarf zu bewältigen. Dieser Artikel zeigte zwei verschiedene Methoden zum erneuten Abtastung der Daten mit DateTimeIndex. Wir haben verschiedene Techniken ausgeübt, um verschiedene Intervalldaten zu berechnen. Das erste Beispiel, das auf der Berechnung der Summe der 2 -Tage -Frequenz für Resampling -Daten erhoben wurde, während die 2nd Beispiel wurde durchgeführt, um den Durchschnitt der Werte auf wöchentlichen Basen herauszufinden. Jede Technik wird mit einem Beispielprogrammcode und der entsprechenden Ausgabe präsentiert.