gpt4 book ai didi

scikit-learn - Sklearn 错误 : predict(x, y) 需要 2 个位置参数,但给出了 3 个

转载 作者:行者123 更新时间:2023-12-03 01:47:33 39 4
gpt4 key购买 nike

我正在努力在 sklearn 上构建多元回归分析,我彻底查看了文档。当我运行 predict() 函数时,出现错误:predict() 采用 2 个位置参数,但给出了 3 个

X是数据框,y是列;我尝试将数据帧转换为数组/矩阵,但仍然收到错误。

已添加显示 x 和 y 数组的代码片段。

reg.coef_
reg.predict(x,y)

x_train=train.drop('y-variable',axis =1)
y_train=train['y-variable']

x_test=test.drop('y-variable',axis =1)
y_test=test['y-variable']


x=x_test.as_matrix()
y=y_test.as_matrix()

reg = linear_model.LinearRegression()
reg.fit(x_train,y_train)

reg.predict(x,y)

最佳答案

使用reg.predict(x)。您无需为预测提供y值。事实上,训练机器学习模型的目的是让它在给定x中的输入参数的情况下推断出y的值。

此外,预测 here 的文档解释说 predict 只需要 x 作为参数。

出现错误的原因:

predict() takes 2 positional arguments but 3 were given

是因为,当你调用reg.predic(x)时,python会隐式地将其翻译为reg.predict(self,x),这就是错误的原因告诉您 predict() 需要 2 个位置参数。您调用预测的方式 reg.predict(x,y) 将被转换为 reg.predict(self,x,y),因此将使用 3 个位置参数而不是 2 这解释了整个错误消息。

关于scikit-learn - Sklearn 错误 : predict(x, y) 需要 2 个位置参数,但给出了 3 个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46550743/

39 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com