日期时间与熊猫中的系列串

新手上路,请多包涵

我应该如何从 datetime 转换为 string ?我的尝试:

 dates = p.to_datetime(p.Series(['20010101', '20010331']), format = '%Y%m%d')
dates.str

原文由 Diego 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 198
2 个回答

没有 .str 日期时间访问器,你也不能做 .astype(str)

相反,使用 .dt.strftime

 >>> series = pd.Series(['20010101', '20010331'])
>>> dates = pd.to_datetime(series, format='%Y%m%d')
>>> dates.dt.strftime('%Y-%m-%d')
0    2001-01-01
1    2001-03-31
dtype: object

请在此处查看有关自定义日期字符串格式的文档: strftime() 和 strptime() Behavior


对于旧的 pandas 版本 <0.17.0 ,可以改为使用 Python 标准库的 datetime.strftime 调用 .apply

 >>> dates.apply(lambda x: x.strftime('%Y-%m-%d'))
0    2001-01-01
1    2001-03-31
dtype: object

原文由 EdChum 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题