熊猫将带有年份整数的列转换为日期时间

Posted

技术标签:

【中文标题】熊猫将带有年份整数的列转换为日期时间【英文标题】:Pandas convert column with year integer to datetime 【发布时间】:2018-03-21 08:36:31 【问题描述】:

我在使用 Pandas 将列 (datatype:int64) 转换为 datetime 时遇到一些问题。

原始数据:

Year
2015
2014
...
2010

期望的结果:

Year
2015-01-01
2014-01-01
...
2010-01-01

我目前的结果:

Year
1970-01-01 00:00:00.000002015
1970-01-01 00:00:00.000002014
...
1970-01-01 00:00:00.000002010

我试过了:

data.Year = pd.to_datetime(data.Year)
data.Year = pd.to_datetime(data.Year, format='%Y-%m-%d')

谢谢

【问题讨论】:

【参考方案1】:

使用format='%Y'

In [225]: pd.to_datetime(df.Year, format='%Y')
Out[225]:
0   2015-01-01
1   2014-01-01
2   2010-01-01
Name: Year, dtype: datetime64[ns]

详情

In [226]: df
Out[226]:
   Year
0  2015
1  2014
2  2010

【讨论】:

哇,我没有意识到它会自动转换为那种格式,谢谢!我会在 11 分钟内接受这个答案。 我不知道为什么,但 format 在日期时间方面对我不起作用。

以上是关于熊猫将带有年份整数的列转换为日期时间的主要内容,如果未能解决你的问题,请参考以下文章

如何从包含文本的熊猫数据框中的列中提取年份(或日期时间)

是否可以将大熊猫的日期时间转换为工作日/周末和季节?

如何将日期转换为年份? [复制]

仅将带有年份和月份的字符串转换为仅适用于年份和月份的日期格式

python - 如何将带有年份的周数转换为python pandas中的日期时间格式?

将列字符串转换/解析为日期时间值 - 熊猫