微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从字符串转换为日期时间时获取常规日期时间格式而不是纪元时间?

如何解决从字符串转换为日期时间时获取常规日期时间格式而不是纪元时间?

我在具有以下格式的列中有字符串类型日期:August 14,2020。我想将它转换为具有通常日期时间格式的日期时间对象,但使用下面的代码给了我纪元时间:

df.loc[mask,'date_added'] = df.loc[mask,'date_added'].apply(lambda x : pd.to_datetime(x))

我知道您可以使用 .fromtimestamp(),但是 .to_datetime() 中是否有获取日期时间对象和格式的选项?我认为使用 .fromtimestamp() 也很难合并到一个 lambda 函数中。我还尝试将 .to_period() 添加到 lambda 函数中,这会导致格式正确,但在使用 seaborn 绘图时会导致问题。

在将字符串转换为日期时间时,有没有办法将其转换为常规日期时间格式?

示例数据:

    show_id     date_added
0   s1     August 14,2020
1   s2    December 23,2016
2   s3    December 20,2018
3   s4    November 16,2017

示例数据的df代码

pd.DataFrame(([(0,'s1','August 14,2020'),(1,'s2','December 23,2016'),(2,'s3','December 20,2018'),(3,'s4','November 16,2017')]),columns=['index','id','date_added'])

解决方法

是的,你可以df['date_added']=df['date_added'].astype('datetime')

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。