To extract the days in month from a datetime column in pandas, you can access the “days_in_month” property. The “days_in_month” property returns a 64-bit integer.
import pandas as pd
df = pd.DataFrame({
"date": ["2021-09-30", "2021-12-31", "2022-03-31", "2022-06-30", "2022-09-30", "2022-12-31"],
"sales": [100,30,50,60,10,80]
})
df["date"] = pd.to_datetime(df["date"])
df["days_in_month"] = df["date"].dt.days_in_month
print(df)
#Output:
date sales days_in_month
0 2021-09-30 100 30
1 2021-12-31 30 31
2 2022-03-31 50 31
3 2022-06-30 60 30
4 2022-09-30 10 30
5 2022-12-31 80 31
When working with data which contains information over time, the ability to extract certain pieces of information from our data easily is valuable.
One such piece of information is getting the days in month from a date when using pandas in Python.
To get how many days are in the month of a datetime value in pandas, you can access the pandas datetime “days_in_month” property. The “days_in_month” property returns a 64-bit integer.
Below is a simple example which shows you how to get the days in month from a datetime variables in a pandas DataFrame.
import pandas as pd
df = pd.DataFrame({
"date": ["2021-09-30", "2021-12-31", "2022-03-31", "2022-06-30", "2022-09-30", "2022-12-31"],
"sales": [100,30,50,60,10,80]
})
df["date"] = pd.to_datetime(df["date"])
df["days_in_month"] = df["date"].dt.days_in_month
print(df)
#Output:
date sales days_in_month
0 2021-09-30 100 30
1 2021-12-31 30 31
2 2022-03-31 50 31
3 2022-06-30 60 30
4 2022-09-30 10 30
5 2022-12-31 80 31
Hopefully this article has been useful for you to learn how to get the number of days in a month from a datetime variable in a pandas DataFrame in Python.