Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python sklearn model.fit”的;使用序列设置数组元素。”;_Python_Scikit Learn_Knn - Fatal编程技术网

Python sklearn model.fit”的;使用序列设置数组元素。”;

Python sklearn model.fit”的;使用序列设置数组元素。”;,python,scikit-learn,knn,Python,Scikit Learn,Knn,我当前正试图通过传递我的X和Y数据并接收此错误来调用我的模型的train()函数。使用序列设置数组元素。 我试着创建假数据并通过它,它工作得很好。 伪造数据: X = [[1,2,3], [2,1,3]] Y = [0,1] knn_model.train(X,Y) 但是当传递真实数据时,我得到了错误。 真实数据是从图像中提取的像素值。我得到的数据结构与上面的假数据相同,但由于某种原因,我得到了错误 数据是通过实例化变量images=[]创建的,然后附加每个图像的每个像素数组 在调试控制台中,

我当前正试图通过传递我的X和Y数据并接收此错误来调用我的模型的train()函数。
使用序列设置数组元素。

我试着创建假数据并通过它,它工作得很好。 伪造数据:

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序列(自身、X、Y):

self.model.fit(X,Y)

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

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


我建议分割真实数据,以检查是否存在引发错误的特定图像。一些图像的像素可能会少一些吗?很抱歉响应太晚。你给了我一个很好的提示@Mindcraft。一些图像返回的是“无”,而不是“像素”值。我刚把它们取下来,现在一切都正常了。这正是我最初的想法。在测试了其他一些格式(比如“假数据”格式)之后,我意识到我的格式是正确的。正如我在对Mindcraft的评论中所解释的,我实际上拥有的价值观是没有的+1但是对于提示,它可能会帮助其他收到相同错误的人。
numpy.array([1.2, 1, 42, 46])