gpt4 book ai didi

python - 向数据框中的 datetime64 列添加偏移量

转载 作者:太空狗 更新时间:2023-10-30 02:46:33 25 4
gpt4 key购买 nike

这真的很快:

我正在从 q 迁移到 pandas,我正在尝试向数据框“ spy ”的日期列中的每个项目添加 1 纳米

>>> spy
<class 'pandas.core.frame.DataFrame'>
Int64Index: 126 entries, 0 to 125
Data columns (total 6 columns):
Date 126 non-null values
Open 126 non-null values
High 126 non-null values
Low 126 non-null values
Close 126 non-null values
Volume 126 non-null values
dtypes: datetime64[ns](1), float64(4), int64(1)

为了说明,我有这个 1 纳米

ttt=np.datetime64(1,'ns')

然后我尝试做:

[x+ttt for x in spy['Date']]

我收到以下错误:

Traceback (most recent call last):
File "/tmp/py6868jTH", line 9, in <module>
[x+ttt for x in spy['Date']]
TypeError: ufunc add cannot use operands with types dtype('O') and dtype('<M8[ns]')

谁能告诉我这里出了什么问题? ttt 和 x 应该是同一类型吧?

谢谢!

最佳答案

您不能添加日期时间。您必须改用 timedelta:

>>> s  = pd.Series(pd.date_range('2013-11-11', periods=3, freq='D'))
>>> td = np.timedelta64(1,'ns')
>>> s
0 2013-11-11 00:00:00
1 2013-11-12 00:00:00
2 2013-11-13 00:00:00
dtype: datetime64[ns]
>>> s + td
0 2013-11-11 00:00:00.000000001
1 2013-11-12 00:00:00.000000001
2 2013-11-13 00:00:00.000000001
dtype: datetime64[ns]

关于python - 向数据框中的 datetime64 列添加偏移量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19988811/

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