我有一个数据框,其列为“last_updated”,类型为datetime64 [ns]:
df = pd.DataFrame({'last_updated': ['11/12/14 2:44 PM','5/18/15 11:36 AM','11/12/14
3:09 PM']})
我想在这一列中创建两列 – “last_updated_date”和“last_updated_time”.此外,时间应为24小时格式.
如何使用pandas完成此任务?
最佳答案 您可以将日期时间列转换为字符串(日期和时间部分),然后将它们转换为24小时格式,如下所示:
new_cols = ['last_updated_date', 'last_updated_time']
df[new_cols] = pd.to_datetime(df['last_updated'], format='%m/%d/%y %I:%M %p') \
.astype(str).str.split(expand=True)
df
这将保留将值导出为excel时的值.