[英]Getting Out of bounds nanosecond timestamp error while using fillna in python?
[英]How to work around Python Pandas DataFrame's “Out of bounds nanosecond timestamp” error?
以下代碼引發“ Out of bounds nanosecond timestamp: 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
因為時間戳限制 :
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')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.