我试图读取一个csv文件,其中有一个日期列。日期存储为1962年8月27日、1959年9月12日和1965年7月15日。当我使用tou datetime函数时,日期被转换为8/27/2062、9/12/2059和7/15/2065。我不知道为什么会这样。是因为年份变了还是什么?你知道吗
示例:
planets = pd.read_csv('Planets.csv',usecols = ['FirstVisited'])
0 3/29/74
1 8/27/62
2 NaN
3 9/12/59
4 7/15/65
5 12/4/73
6 9/1/79
Name: FirstVisited, dtype: object
pd.to_datetime(planets.FirstVisited)
0 1974-03-29
1 2062-08-27
2 NaT
3 2059-09-12
4 2065-07-15
5 1973-12-04
6 1979-09-01
检查索引1、3和4
其实这和你的代码无关! 它是编程语言(基本上是C语言)中的“时间起源”。C的time.h标题中的时间来源是“1970年1月1日”。这就是为什么你在那之前的约会结果是错误的。 我建议您手动更正这些时间。。。比如:
这是因为大多数实现都假设00-68年属于2000年,69-99年属于1900年。如果所有日期都是19xx,那么在更改为日期之前,您可以在字符串的年份部分添加后缀“19”
如果所有的日期都是19xx,你会怎么做
您可以使用pandas
to_datetime
函数,参数errors='importe'将非日期转换为NaT
null值。检查我的回答如下。你知道吗相关问题 更多 >
编程相关推荐