ValueError:当DF太大时,无法将非限定值(NA或inf)转换为整数?

2024-03-29 09:32:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个数据框,在该数据框中,我计算的是lookback的X个单位的先前数据点相对于当前数据点的百分比变化。我已经使用这段代码一段时间了,在我尝试使用一定数量的回溯单元之前,它似乎工作得很好

for x in range(1, lookback + 1):
    df['_relhist_' + str(x)] = df['value'].shift(periods=x, fill_value=np.nan) / df['value'] - 1
df.dropna(inplace=True)

stacktrace说错误是在dropna行抛出的

还有其他数据类型的列,但这里使用的唯一列是value,其中在创建相对历史记录之前成功地向下转换为np.float32

df['value'] = df['value'].astype(np.float32)

奇怪的是,当我进行1000个单元的回溯时,我的示例是毫无错误地创建的,并且这段代码做了我期望它做的事情(删除之前没有足够行的行)。然而,当我尝试进行1500个单元的回溯时,我会在这里抛出这个错误


Tags: 数据代码indffor数量value错误