I have the following DF
45 2018-01-01
73 2018-02-08
74 2018-02-08
75 2018-02-08
76 2018-02-08
I want to extract the month name and year in a simple way in the following format:
45 Jan-2018
73 Feb-2018
74 Feb-2018
75 Feb-2018
76 Feb-2018
I have used the df.Date.dt.to_period("M")
which return "2018-01"
format.
Cast you date from object to actual datetime and use dt to access what you need.
import pandas as pd
df = pd.DataFrame({'Date':['2019-01-01','2019-02-08']})
df['Date'] = pd.to_datetime(df['Date'])
# You can format your date as you wish
df['Mon_Year'] = df['Date'].dt.strftime('%b-%Y')
# the result is object/string unlike `.dt.to_period('M')` that retains datetime data type.
print(df['Mon_Year'])
First convert the column to datetime datatype using
sales_df['Date'] = pd.to_datetime(sales_df['Date'])
then you can do
sales_df['Month'] = sales_df['Date'].dt.month_name(locale='English')
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With