如何在熊猫中将工作周转换为月份?

时间:2017-07-24 00:27:08

标签: python pandas datetime

我有以下表格:

 Workweek  Month
   201730   July
   201728   July
   201731   July August 

我如何通过使用python pandas将工作周转换为月份?任何人都可以分享想法?顺便说一句,我的星期天是考虑一周的第一天。

1 个答案:

答案 0 :(得分:1)

假设Workweek是一个字符串:

import datetime, calendar
df['Month'] = df['Workweek'].apply(lambda x:\
                            calendar.month_name[\
                            datetime.datetime.strptime(x + ' 0', "%Y%W %w").month])

在没有明确要求datetime的情况下表达相同解决方案的另一种方式:

df['Month'] = pd.to_datetime(df['Workweek'] + ' 0', format="%Y%W %w")\
                .dt.month.apply(lambda x:calendar.month_name[x])