简体   繁体   中英

convert month_year value to month name and year columns in python

I've a sample dataframe

year_month
202004
202005
202011
202012

How can I append the month_name + year column to the dataframe

year_month    month_name
202004        April 2020
202005        May 2020
202011        Nov 2020
202112        Dec 2021

You can use datetime.strptime to convert your string into a datetime object, then you can use datetime.strftime to convert it back into a string with different format.

>>> import datetime as dt
>>> import pandas as pd
>>> df = pd.DataFrame(['202004', '202005', '202011', '202012'], columns=['year_month'])
>>> df['month_name'] = df['year_month'].apply(lambda x: dt.datetime.strptime(x, '%Y%m').strftime('%b %Y'))
>>> df
  year_month month_name
0     202004   Apr 2020
1     202005   May 2020
2     202011   Nov 2020
3     202012   Dec 2020

You can see the full list of format codes here .

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM