So addieren und subtrahieren sie monate zu einem datum in pandas


Sie können die folgenden Methoden verwenden, um Monate zu einem Datum in Pandas zu addieren und davon zu subtrahieren:

Methode 1: Fügen Sie die bisherigen Monate hinzu

 from pandas. tseries . offsets import DateOffset

df[' date_column '] + DateOffset(months= 3 )

Methode 2: Subtrahieren Sie die Monate vom Datum

 from pandas. tseries . offsets import DateOffset

df[' date_column '] - DateOffset(months= 3 )

Die folgenden Beispiele zeigen, wie jede Methode in der Praxis mit dem folgenden Pandas DataFrame verwendet wird:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' date ': pd. date_range (start='1/5/2022', freq='M', periods= 10 ),
                   ' sales ': [6, 8, 9, 5, 4, 8, 8, 3, 5, 9]})

#view DataFrame
print (df)

        dirty dates
0 2022-01-31 6
1 2022-02-28 8
2 2022-03-31 9
3 2022-04-30 5
4 2022-05-31 4
5 2022-06-30 8
6 2022-07-31 8
7 2022-08-31 3
8 2022-09-30 5
9 2022-10-31 9

Beispiel 1: Aktuelle Monate in Pandas hinzufügen

Der folgende Code zeigt, wie eine neue Spalte erstellt wird, die dem Datumsspaltenwert 3 Monate hinzufügt:

 from pandas. tseries . offsets import DateOffset

#create new column that adds 3 months to date
df[' date_plus3 '] = df. date + DateOffset(months= 3 )

#view updated DataFrame
print (df)

        date sales date_plus3
0 2022-01-31 6 2022-04-30
1 2022-02-28 8 2022-05-28
2 2022-03-31 9 2022-06-30
3 2022-04-30 5 2022-07-30
4 2022-05-31 4 2022-08-31
5 2022-06-30 8 2022-09-30
6 2022-07-31 8 2022-10-31
7 2022-08-31 3 2022-11-30
8 2022-09-30 5 2022-12-30
9 2022-10-31 9 2023-01-31

Die neue Spalte date_plus3 stellt Werte aus der Datumsspalte dar, wobei an jeden Wert drei Monate angehängt werden.

Beispiel 2: Subtrahieren Sie in Pandas die Monate vom Datum

Der folgende Code zeigt, wie eine neue Spalte erstellt wird, die 3 Monate vom Datumsspaltenwert abzieht:

 from pandas. tseries . offsets import DateOffset

#create new column that subtracts 3 months from date
df[' date_minus3 '] = df. date + DateOffset(months= 3 )

#view updated DataFrame
print (df)

        date sales date_minus3
0 2022-01-31 6 2021-10-31
1 2022-02-28 8 2021-11-28
2 2022-03-31 9 2021-12-31
3 2022-04-30 5 2022-01-30
4 2022-05-31 4 2022-02-28
5 2022-06-30 8 2022-03-30
6 2022-07-31 8 2022-04-30
7 2022-08-31 3 2022-05-31
8 2022-09-30 5 2022-06-30
9 2022-10-31 9 2022-07-31

Die neue Spalte date_minus3 stellt die Werte in der Datumsspalte dar, wobei von jedem Wert drei Monate abgezogen werden.

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie andere gängige Vorgänge in Pandas ausgeführt werden:

So konvertieren Sie Spalten in Pandas in DateTime
So konvertieren Sie DateTime in Pandas in ein Datum
So extrahieren Sie den Monat aus dem Datum in Pandas

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert