python错误为IndexError: too many indices for array
可以解决的方法有如下方案:
You are getting this error because you are making target array ‘y’ 2-D which is actually needed to be 1-D to pass in cross validation function.
These two cases are different:
1. y=numpy.zeros(shape=(len(list),1))
2. y=numpy.zeros(shape=(len(list)))
初始化数组是一维的,二维的就会出错,将array=zeros(numberOFLines)改成array = zeros((numberOFLines,3)就可以解决错误了
或者采取reshape,将其转化为1一维 ,使用b.resize() 和squeeze函数都可以达到效果
原始代码是
train_data=train_data[new_indices,:,:,:]
修改为
train_data=train_data[new_indices,2] ,因为是三维矩阵,从0开始
本文解析了在使用Python进行数据处理时常见的IndexError问题,特别是当目标数组'y'被错误地设置为2-D,而实际需要的是1-D的情况。文章提供了两种解决方案,一种是在初始化时正确设置数组维度,另一种是通过reshape、resize或squeeze函数来调整现有数组的维度。
612

被折叠的 条评论
为什么被折叠?



