首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >熊猫to_datetime函数默认年份

熊猫to_datetime函数默认年份
EN

Stack Overflow用户
提问于 2014-06-18 15:03:30
回答 1查看 1.9K关注 0票数 6

我是熊猫的新手,当我按照代码运行时,我得到了一个不同的结果:

代码语言:javascript
运行
复制
import pandas as pd

ts = pd.to_datetime("2014-6-10 10:10:10.30",format="%Y-%m-%d %H:%M:%S.%f")
print ts
ts = pd.to_datetime("6-10 10:10:10.30",format="%m-%d %H:%M:%S.%f")
print ts

产出如下:

代码语言:javascript
运行
复制
2014-06-10 10:10:10.300000
1900-06-10 10:10:10.300000

这意味着默认年份是1900年,我如何才能将第二个年份改为2014年?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-18 15:23:33

不能写入日期时间的year属性,所以最简单的方法是使用replace

代码语言:javascript
运行
复制
In [57]:

ts = ts.replace(year=2014)
ts
Out[57]:
Timestamp('2014-06-10 10:10:10.300000')

另一种可能是将当前年份存储为字符串,并根据需要将其放在前面,这有一个优点,您可以对所有日期使用相同的格式字符串:

代码语言:javascript
运行
复制
In [68]:

this_year = str(datetime.datetime.now().year)
datestr = this_year +'-' + '6-10 10:10:10.30'
pd.to_datetime(datestr,format="%Y-%m-%d %H:%M:%S.%f")
Out[68]:
Timestamp('2014-06-10 10:10:10.300000')

想不出更好的方法,但是如果需要设置年份,可以将上面的内容封装在函数中进行测试。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24288964

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档