datetime到python pandas中的系列字符串


问题内容

我需要做以下简单的事情:

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

但是我得到一个错误。我应该如何从转换datetimestring


问题答案:

没有str日期时间访问器,您也不能执行dates.astype(str)任何操作,可以调用apply和使用datetime.strftime

In [73]:

dates = pd.to_datetime(pd.Series(['20010101', '20010331']), format = '%Y%m%d')
dates.apply(lambda x: x.strftime('%Y-%m-%d'))
Out[73]:
0    2001-01-01
1    2001-03-31
dtype: object

您可以使用任何喜欢的方式更改日期字符串的格式:strftime()和strptime()Behavior

更新资料

从版本开始,0.17.0您可以使用dt.strftime

dates.dt.strftime('%Y-%m-%d')

现在可以工作