为什么会出现此错误?
ufunc'add'不包含签名匹配类型为dtype的循环
代码:
cols = df.columns.tolist()
cols = np.array (cols)
cols2 = cols[:17] + cols[19:22] + cols [18]
谢谢!
答案 0 :(得分:0)
有2个问题
+
数组上使用numpy
时,它被解释为数值加法,而不是列表串联,因此与匹配dtype有关的错误。而不是添加,您应该使用np.concatenate
cols[18]
不是数组-它是数组的元素。您不能添加数字和数组(如果要执行的操作是将元素附加到数组中)cols2 = np.concatenate([cols[:17], cols[19:22], [cols[18]]])
或者您可以将cols保留为列表(不将其转换为numpy
数组并使用列表添加):
cols = df.columns.tolist()
cols2 = cols[:17] + cols[19:22] + [cols[18]]