python - sklearn 模型.fit "setting an array element with a sequence."

标签 python scikit-learn knn

我目前正在尝试通过传递我的 X 和 Y 数据来调用模型的 train() 函数,但收到此错误setting an array element with a sequence.

我尝试创建假数据并传递它,但效果很好。 假数据:

X = [[1,2,3], [2,1,3]]
Y = [0,1]
knn_model.train(X,Y)

但是当传递真实数据时,我得到了错误。 真实数据是从图像中提取的像素值。我得到了与上面的假数据相同的数据结构,但由于某种原因我得到了错误。

数据是通过实例化变量 images = [] 然后附加每个图像的每个像素数组来创建的。

在调试控制台中,这是假数据和真实数据:

real data: array dtype('O') of list containing array dtype('uint8')
fake data: array dtype('int32') of list containing array dtype('int32')

收到的错误是函数fit()被调用的时候,错误是

“用序列设置数组元素。”

训练函数:

def train(self, X, Y): self.model.fit(X, Y)

最佳答案

解决方案在错误消息中。当您发送序列/列表时,您的模型需要一个数组。在追加之前,使用 numpy 将训练数据从序列转换为数组。

numpy.array([1.2, "abc"], dtype=float)

numpy.array([1.2, 1, 42, 46])

关于python - sklearn 模型.fit "setting an array element with a sequence.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56876671/

相关文章:

python - 让 Omni 完整地在 Windows 上的 vim 7.2 上工作

python - 如何在SVC模型中设置特定阈值并生成混淆矩阵?

python-3.x - XGboost 目标 : Is there a way to do Multi label (NOT multiclass ) classification?

machine-learning - kNN 最先进的实现

python - 查找并写入列中的下一个空白单元格

Python - matplotlib - 即使 .bar() 取零值时如何绘制空间

python - celery - 没有名为五的模块

python - 具有 One Hot Encoded Features 的 Auto-Sklearn 中的特征和特征重要性

c++ - 使用 OpenCV 进行硬币模板匹配

machine-learning - 计算 KNN 的欧氏距离