To extract the day of year from a datetime column in pandas, you can access the “day_of_year” property. The “day_of_year” 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["day_of_year"] = df["date"].dt.day_of_year
print(df)
#Output:
date sales day_of_year
0 2021-09-30 100 273
1 2021-12-31 30 365
2 2022-03-31 50 90
3 2022-06-30 60 181
4 2022-09-30 10 273
5 2022-12-31 80 365
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 day of year from a date when using pandas in Python.
You can access the pandas datetime “day_of_year” property and get the day of the year from a datetime in pandas. The “day_of_year” property returns a 64-bit integer.
Below is a simple example which shows you how to get the day of the year 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["day_of_year"] = df["date"].dt.day_of_year
print(df)
#Output:
date sales day_of_year
0 2021-09-30 100 273
1 2021-12-31 30 365
2 2022-03-31 50 90
3 2022-06-30 60 181
4 2022-09-30 10 273
5 2022-12-31 80 365
Hopefully this article has been useful for you to learn how to get the day of year from a datetime variable in a pandas DataFrame in Python.