IndexError Traceback (most recent call last) Cell In[13], line 3 1 new_array=np.zeros((4,12,100,9)) 2 for i in range(len(df_array)): ----> 3 new_array[df_array[i][5]-2013][df_array[i][6]-1][df_array[i][1]][df_array[i][2]]+=df_array[i][3] 4 df_new = pd.DataFrame(columns=['创建年', '创建月', '物料编号', '应发库', '销售订单数量']) 5 i=0 IndexError: only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or boolean arrays are valid indices该如何解决?
时间: 2024-04-02 10:32:34 浏览: 106
04_数据类型进阶.pdf
这个错误通常是由于使用了无效的索引值引起的。根据错误信息,`new_array`数组的索引值只能是整数、切片、省略号、`numpy.newaxis`或布尔数组,而不能是其他类型的值。
检查代码中`df_array[i][5]`、`df_array[i][6]`、`df_array[i][1]`和`df_array[i][2]`这些索引值是否都是整数,如果有一个不是整数,就会引发这个错误。
另外,也需要检查`new_array`数组的维度是否与`df_array`中的索引值范围相匹配。如果`new_array`的维度不正确,也会导致索引错误。
阅读全文