如何使用线性回归系数得出二手车的值?

1sbrub3j  于 2021-08-20  发布在  Java
关注(0)|答案(1)|浏览(363)

目标:
我想根据以下二手车价格数据,使用线性回归预测汽车价格:

我的程序:
我对“make”和“type”进行了热编码,并将这些列添加回:

然后,我在预测器列上使用了标准标量:

我的模型:
我使用ols(加上常数后)得到系数:

问:使用这个,我如何预测,例如:一辆凯迪拉克轿车,皮制,6缸,行驶45000英里?
我熟悉使用ss.transform获得缩放值,然后可以将其输入 model_OLS.predict 预测汽车价格。我猜我不能只是挑选我想用来预测价格的功能?我必须把它们都说出来?

m2xkgtsf

m2xkgtsf1#

如果您在所有功能上都安装了ols模型,那么使用有限的功能进行预测就没有多大意义。您可以选择系数(const+1make_cadillac+1leather+6*cylinder)进行自定义预测,或者您可以根据预测中要使用的功能重新拟合模型,或者使用一个函数来简化它。

vals = {'Make_Cadillac': 1, 'Leather': 1, 'Cylinder': 6} # populate scaled values instead or transform them in the function

def make_prediction(X, y, vals):
    OLS = sm.OLS(y, X[[*vals]]).fit()
    # scale input values #
    return OLS.predict([*vals.values()])

print(make_prediction(X, y, vals))

相关问题