ValueError:传递值的形状为 (569, 30),索引暗示 (569, 31)

Posted

技术标签:

【中文标题】ValueError:传递值的形状为 (569, 30),索引暗示 (569, 31)【英文标题】:ValueError: Shape of passed values is (569, 30), indices imply (569, 31) 【发布时间】:2020-01-12 19:55:41 【问题描述】:

我正在学习 pandas 和 scikit-learn 的基础知识,但在做练习时遇到了疑问。它给了我一个错误。代码应该返回一个 (569, 31) DataFrame,但它给了我以下错误:

ValueError: 传递的项目数错误 30,位置意味着 31

ValueError: 传递值的形状是 (569, 30),索引意味着 (569, 31)

我的代码如下:

data = pd.DataFrame(cancer.data, columns= np.append(cancer['feature_names'], ['target']))
print(data.describe())

cancer.data 有 30 列,我想附加 ['target'] 列,因此我可以将 cancer 数据集转换为具有 31 列而不是 30 列的数据框。

【问题讨论】:

表示列数大于数据的宽度 你能举一个数据的例子吗? 【参考方案1】:

声明一个要转换成列的列表,例如target=[1,2,3,...] 然后使用cancer.data['target'] = target

【讨论】:

以上是关于ValueError:传递值的形状为 (569, 30),索引暗示 (569, 31)的主要内容,如果未能解决你的问题,请参考以下文章

Pandas:ValueError:传递值的形状是(110、10),索引暗示(111、10)

Pandas concat:ValueError:传递值的形状是blah,索引暗示blah2

Pandas Dataframe ValueError:传递值的形状是(X,),索引暗示(X,Y)

conv1D 中的形状尺寸

ValueError:无法为具有形状“(?,784)”的张量“x:0”提供形状(784,)的值

ValueError:无法为具有形状“(?,4)”的张量“Placeholder_36:0”提供形状(4,)的值