【发布时间】:2020-02-22 08:35:28
【问题描述】:
我的 df['date'] 格式为
pandas.core.series.Series
我更改了日期格式
df['date_time'] = pd.to_datetime(df["date"])
但是日期变成了奇怪的格式
20160101 -> 1970-01-01 00:00:00.020160101
【问题讨论】:
我的 df['date'] 格式为
pandas.core.series.Series
我更改了日期格式
df['date_time'] = pd.to_datetime(df["date"])
但是日期变成了奇怪的格式
20160101 -> 1970-01-01 00:00:00.020160101
【问题讨论】:
Pandas 尝试'guess' 日期时间格式,但有时会失败。所以这里如果所有日期时间的格式都为YYYYMMDD 添加参数format='%Y%m%d' 以进行正确解析:
df = pd.DataFrame({'date':['20160101', '20160104']})
df['date_time'] = pd.to_datetime(df["date"], format='%Y%m%d')
print (df)
date date_time
0 20160101 2016-01-01
1 20160104 2016-01-04
编辑:在一些最新的 pandas 版本(在 pandas 0.25.1 中测试)中,您的解决方案应该可以正常工作:
df['date_time'] = pd.to_datetime(df["date"])
print (df)
date date_time
0 20160101 2016-01-01
1 20160104 2016-01-04
【讨论】: