Maanden optellen en aftrekken bij een datum in pandas


U kunt de volgende methoden gebruiken om maanden op te tellen bij of af te trekken van een datum in panda’s:

Methode 1: Voeg maanden tot nu toe toe

 from pandas. tseries . offsets import DateOffset

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

Methode 2: Trek de maanden van de datum af

 from pandas. tseries . offsets import DateOffset

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

De volgende voorbeelden laten zien hoe u elke methode in de praktijk kunt gebruiken met de volgende panda’s DataFrame:

 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

Voorbeeld 1: Voeg maanden tot nu toe toe in Panda’s

De volgende code laat zien hoe u een nieuwe kolom maakt die 3 maanden toevoegt aan de datumkolomwaarde :

 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

De nieuwe kolom date_plus3 vertegenwoordigt waarden uit de datumkolom , waarbij aan elke waarde drie maanden zijn toegevoegd.

Voorbeeld 2: Trek maanden af van de datum in Panda’s

De volgende code laat zien hoe u een nieuwe kolom maakt die drie maanden aftrekt van de datumkolomwaarde :

 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

De nieuwe kolom date_minus3 vertegenwoordigt de waarden in de datumkolom , waarbij van elke waarde drie maanden worden afgetrokken.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in panda’s kunt uitvoeren:

Hoe kolommen naar DateTime in Pandas te converteren
Hoe DateTime naar datum te converteren in Pandas
Hoe maand uit datum te extraheren in Panda’s

Einen Kommentar hinzufügen

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