gpt4 book ai didi

python - 如何解决 Python Pandas DataFrame 的 "Out of bounds nanosecond timestamp"错误?

转载 作者:太空宇宙 更新时间:2023-11-03 11:40:36 26 4
gpt4 key购买 nike

以下代码抛出“越界纳秒时间戳:1452-04-15 00:00:00
”错误。如果我将日期字符串替换为一些最近的日期,例如 2017-01-01,则相同的代码有效。

df=pd.DataFrame({'Date':np.arange('1452-04-15', '1519-05-02', dtype='datetime64[D]')})

此示例代码用于提供重现错误的简单方法。我真正想要完成的是将包含此类非常早日期的 csv 读取到数据框中,并将字符串日期转换为 np.datetime64[D] 或任何类似的日期格式。

最佳答案

你需要period_range :

r = pd.period_range('1452-04-15', '1519-05-02')
print (r)
PeriodIndex(['1452-04-15', '1452-04-16', '1452-04-17', '1452-04-18',
'1452-04-19', '1452-04-20', '1452-04-21', '1452-04-22',
'1452-04-23', '1452-04-24',
...
'1519-04-23', '1519-04-24', '1519-04-25', '1519-04-26',
'1519-04-27', '1519-04-28', '1519-04-29', '1519-04-30',
'1519-05-01', '1519-05-02'],
dtype='period[D]', length=24488, freq='D')

df = pd.DataFrame({'Date' : r})
print (df.head())
Date
0 1452-04-15
1 1452-04-16
2 1452-04-17
3 1452-04-18
4 1452-04-19

因为timestamp limitations :

In [66]: pd.Timestamp.min
Out[66]: Timestamp('1677-09-21 00:12:43.145225')

In [67]: pd.Timestamp.max
Out[67]: Timestamp('2262-04-11 23:47:16.854775807')

关于python - 如何解决 Python Pandas DataFrame 的 "Out of bounds nanosecond timestamp"错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50265288/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com