【发布时间】:2020-06-15 02:00:19
【问题描述】:
我正在尝试将带有日期的列格式化为“月年”格式,而不更改非日期值。
input_df = pd.DataFrame({'Period' :['2017-11-01 00:00:00', '2019-02-01 00:00:00', 'Mar 2020', 'Pre-Nov 2017', '2019-10-01 00:00:00' , 'Nov 17-Nov 18'] } )
input_df 是
预期输出是:
我厌倦了以下不起作用的代码:
output_df['Period'] = input_df['Period'].apply(lambda x: x.strftime('%m %Y') if isinstance(x, datetime.date) else x)
请帮忙..
【问题讨论】:
-
制作一个函数,尝试解析它。如果失败,什么也不做。如果可行,则根据您的格式约定重新格式化。将其全部返回为字符串。
标签: python python-3.x pandas datetime format