分位数回归

Reads: 2102 Edit

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())

pyt-92

quantReg_results = quantReg_model.fit(0.5)
print(quantReg_results.summary())

pyt-93

quantReg_results = quantReg_model.fit(0.75)
print(quantReg_results.summary())

pyt-94

结合0.25、0.5和0.75三个分位数的回归结果可知,price变量的系数均显著,因为较为稳健;type变量的系数只有在0.75分位数下才显著,不太稳健。



获取案例数据和源代码,请关注微信公众号并回复:Python_dt7


Comments

Make a comment