📜  毫升 |多元线性回归(反向消除技术)(1)

📅  最后修改于: 2023-12-03 15:40:40.807000             🧑  作者: Mango

多元线性回归(反向消除技术)

简介

多元线性回归是一种常见的统计分析方法,用于研究多个自变量和一个因变量之间的关系。在实际应用中,有时候我们并不知道哪些自变量是有用的,哪些是无用的。反向消除技术就是一种用来确定模型中哪些自变量是有用的、哪些是无用的方法。

实现方法

反向消除技术的实现方法分为以下步骤:

  1. 将所有自变量放入模型中。

  2. 对每个自变量求出t值,并找到其中绝对值最小的那个t值,即t值最小的自变量。

  3. 如果t值最小的自变量t值小于所选的显著性水平,将其从模型中移除。

  4. 重新对所有自变量进行t值的计算,并重复步骤2和步骤3,直到所有的t值都大于所选的显著性水平为止。

python代码示例
import pandas as pd
import statsmodels.api as sm

# 读取数据
df = pd.read_csv('data.csv')

# 将变量拆分为自变量和因变量
x = df.drop(['Y'], axis=1)
y = df['Y']

# 加入常量
x = sm.add_constant(x)

# 多元线性回归分析
model = sm.OLS(y, x).fit()

# 反向消除技术
while max(model.pvalues) > 0.05:
    feature_max_pvalue = model.pvalues.idxmax()
    if feature_max_pvalue == "const":
        break
    x = x.drop([feature_max_pvalue], axis=1)
    model = sm.OLS(y, x).fit()

# 模型摘要
print(model.summary())
结果解读

模型摘要提供了对模型的关键统计信息的汇总:

  1. 该模型的适配度:指模型的总体拟合优度。

  2. 该模型的回归系数:指每个自变量对因变量的影响大小。

  3. 该模型的显著性水平:指模型是否有效。

在反向消除技术过程中,我们删除了一些t值较小的自变量,只在模型中保留了一些较为显著的自变量。这样可以使模型更为简洁,同时也可以排除掉一些不显著的自变量对模型的干扰,从而提高模型的准确性。