回归分析结果不在预期数字范围内

2024-04-25 06:00:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图对25维数据进行回归分析。 我的数据在一个数据框中。 我的最终目标是预测一个分数值,即百分比(0,99,70,22 e.t.c)

1.我需要标准化数据/缩放它还是线性/多项式回归分析处理这个问题?你知道吗

  1. 我应用了多项式回归,虽然它给了我一个很好的r平方值,我看到它返回的结果是负值-342.54,或者像252这样的高范围值(完全不在我给训练的分数范围内)我怎么纠正这个? 我还想用其他方法来预测价值吗? 下面是链接数据类型: https://docs.google.com/spreadsheets/d/1swkRwLXklrWEDV3bKic5uxl_uHLjzU0QDHJ2JLSP8zQ/edit?usp=sharing

代码如下:

 X= colum[D:AC] of spreadsheet
Y= column['Score'] or column ['Match'] in case of logistic regression
poly = PolynomialFeatures(degree=2)
X_ = poly.fit_transform(X)
X_test_ = poly.fit_transform(X_test)
# Instantiate
lg = LinearRegression()

   # Fit
  lg.fit(X_, y)

 # Obtain coefficients
 lg.coef_

Tags: of数据方法testtransformcolumn线性分数
1条回答
网友
1楼 · 发布于 2024-04-25 06:00:26

1.我需要对数据进行标准化/缩放,还是线性/多项式回归分析来处理这个问题?

这“通常”是个好习惯。模型收敛更快。如果您使用的是sklearn,那么Linear Regression模块有一个名为normalize的参数,当设置为True时,它将在拟合模型之前规范化所有变量

<强>2。我应用了多项式回归,虽然它给了我一个很好的r平方值,我看到它返回的结果是负值-342.54,或者像252这样的高范围值(完全不在我给训练的分数范围内)我怎么纠正这个?我还想用其他方法来预测价值吗?

多项式回归的目的是给出介于-inf+inf之间的值。如果需要百分比值,请通过sigmoid这样的函数缩放这些变量。您还可以使用Logistic Regressionpredict_proba()函数将输出介于0和1之间的概率(尽管此模型适用于完全不同的目标)。你知道吗

正如@VivekKumar所说的,除非我们有具体的信息,否则我们很难帮助你。你知道吗

相关问题 更多 >