简单的问题我没有得到预期的输出。(线性回归)

我是编程新手。

代码:

import pandas as pd


import numpy as np


import matplotlib.pyplot as plt


from sklearn import linear_model


df=pd.read_csv('homeprices.csv')



reg = linear_model.LinearRegression()

问题1


reg.fit(df[['area']],df.price)

预期输出应该是


LinearRegression(copy_X=True, fit_intercept=True, n_jobs=None,

         normalize=False)

我的输出:


LinearRegression()

问题2


reg.predict(3300)

当我使用时它给出错误"()",但是当我使用 2D 数组时"[[]]"它给了我正确的输出,但我想知道为什么当我使用唯一的括号时它没有给我输出(如视频所示)。


守着星空守着你
浏览 103回答 3
3回答

吃鸡游戏

问题1:这就是最新版本 sklearn(即 0.23)中拟合模型输出的显示方式。参数相同,但未在输出中显示。您可以使用reg.get_params()查看参数。问题2:较新版本的 Scikit-learn 需要预测函数的 2D 输入,我们可以通过以下方式制作 3300 2D [[3300]]:reg.predict( [[3300]] )

慕娘9325324

问题1:这取决于您之前可能更改过的默认参数或更改它的任何其他原因,但是您可以在以这种方式初始化线性分类器时轻松设置所需的参数:reg = linear_model.LinearRegression(copy_X=True, fit_intercept=True, n_jobs=None, normalize=False)问题2: reg.predict(3300)这样传递参数给Pandas是不正确的,你可以看到讲师也更正了reg.predict([3300])youtube帖子描述中的答案

倚天杖

尝试这个,但你应该定义你的变量并适应它们以获得所需的输出import pandas as pdimport numpy as npimport matplotlib.pyplot as pltfrom sklearn.linear_model import LinearRegression()df=pd.read_csv('homeprices.csv')reg =LinearRegression()
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python