|本文共689字,阅读约需3分钟
1
标准化回归系数
定义:
标准化回归系数是将所有变量标准化(即转换为标准正态分布,均值为0,标准差为1)后得到的系数。它表示每个自变量的标准差变化对因变量标准差变化的影响。
特点:
(1)标准化回归系数消除了单位的影响,方便不同量纲的变量之间的比较。
(2)它表示自变量每增加一个标准差,因变量的变化量是多少个标准差。
(3)特别适合用于多元回归分析中比较各个自变量对因变量相对影响的重要性。
2
非标准化回归系数
定义:
非标准化回归系数表示每个自变量对因变量的直接影响。它是回归方程中实际计算出的系数,反映了自变量每变化一个单位时因变量的变化量。
特点:
(1)它直接受到变量的量纲影响,例如,如果自变量是“收入”(单位为美元),因变量是“消费”(单位为美元),那么非标准化系数将反映“每增加一美元收入导致的消费变化量”。
(2)适合于解释自变量和因变量之间的绝对关系。
3
案例演示
使用一个数据集作为示例,计算土地覆盖类型(森林面积、草地面积等)与气温之间的回归关系,并展示如何计算标准化和非标准化回归系数。
计算非标准化回归系数:
import statsmodels.api as sm
# 添加常数项
X = df[['Forest_Area', 'Grassland_Area', 'Urban_Area']]
X = sm.add_constant(X) # 添加常数项
y = df['Avg_Temperature']
# 进行线性回归
model = sm.OLS(y, X).fit()
unstandardized_coefficients = model.params
unstandardized_coefficients
计算标准化回归系数:
# 标准化自变量和因变量
df_standardized = (df - df.mean()) / df.std()
# 标准化后的自变量和因变量
X_std = df_standardized[['Forest_Area', 'Grassland_Area', 'Urban_Area']]
X_std = sm.add_constant(X_std)
y_std = df_standardized['Avg_Temperature']
# 进行标准化后的线性回归
model_std = sm.OLS(y_std, X_std).fit()
standardized_coefficients = model_std.params
standardized_coefficients
结果分析:
非标准化系数反映了实际单位(如平方公里)的变化对温度(摄氏度)的影响,适合用于具体的预测和解释。根据非标准化系数,森林面积每增加 1 平方公里,温度降低 0.070 摄氏度;城市面积每增加 1 平方公里,温度增加 0.034 摄氏度。
标准化系数用于比较不同自变量对因变量的相对影响力。根据标准化系数,森林面积对温度的影响最大(绝对值为 0.91),而草地面积和城市面积的影响则要小得多。表明在控制了变量的量纲后,森林面积是温度变化的主要驱动因素。
4
完整代码
公众号后台回复【240927】,即可获取完整的代码及示例数据!(数据仅用于演示,不存在合理性)
喜欢也行,不喜欢也行;如果觉得有用处的话,还请点点右下角的赞/在看,记得关注我哟!!!