1 数据说明
这里仍然以多元线性回归中的“car_sales.xlsx”数据为例进行演示!且直接以多元线性回归中方差膨胀因子(VIF)确定的price和type变量作为自变量。
2 初步回归
# 引入模块
import numpy as np
import pandas as pd
import statsmodels.api as sm
# 读取外部数据
data = pd.read_excel('D:\\Desktop\\car_sales.xlsx', sheet_name='Sheet1', na_values='n/a')
data_balance =data.dropna(axis=0, how='any', thresh=None, subset=None, inplace=False)
y=data_balance.loc[:, 'lnsales']
X=data_balance[['price', 'type']]
X=sm.add_constant(X)
quantReg_model = sm.QuantReg(y, X)
quantReg_results = quantReg_model.fit(0.25)
print(quantReg_results.summary())
quantReg_results = quantReg_model.fit(0.5)
print(quantReg_results.summary())
quantReg_results = quantReg_model.fit(0.75)
print(quantReg_results.summary())
结合0.25、0.5和0.75三个分位数的回归结果可知,price变量的系数均显著,因为较为稳健;type变量的系数只有在0.75分位数下才显著,不太稳健。