我有下表
NMonth
01
02
03
如果我使用以下代码(日历模块)
SMonth=df['NMonth'].apply(lambda x: calendar.month_abbr[x])
我的结果将是:
NMonth SMonth
01 Jan
02 Feb
03 Mar
如果使用日历模块,如何获得本月的完整拼写?以下是我的愿望结果
NMonth SMonth
01 January
02 February
03 March
答案 0 :(得分:5)
使用month_name
代替month_abbr
。
SMonth = df['NMonth'].apply(lambda x: calendar.month_name[x])
您可以在文档中找到自己的答案:https://docs.python.org/3.5/library/calendar.html#calendar.month_name
答案 1 :(得分:1)
我认为通过字典更好地使用map
:
months = ['January','February','March','April','May','June','July','August',
'September','October','November','December']
d = {'{:02d}'.format(i+1):months[i] for i in range(12)}
print (d)
{'05': 'May', '01': 'January', '06': 'June', '11': 'November',
'04': 'April', '12': 'December', '09': 'September', '08': 'August',
'03': 'March', '07': 'July', '10': 'October', '02': 'February'}
SMonth=df['NMonth'].map(d)
print (SMonth)
0 January
1 February
2 March
Name: NMonth, dtype: object