python分位数回归模型_Python中的分位数回归给出了与R不同的结果

Python中statsmodels包中的QuantReg使用如下代码中所示的数据,得到了与R中截然不同的结果。在

我分别用Python和R测试了STACKLOSS数据,结果是一样的。我想知道数据本身是否在Python中引起了一些问题,或者可能两种算法的实现有一些根本的区别,但却无法解决。在

Python代码:from statsmodels.regression.quantile_regression import QuantReg

y = [0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 662.59, 248.08, 331.25, 182.98, 1085.69, -44.32]

X = [

[1, 20322.18, 0.00, 0], [1, 19653.34, 0.00, 0],

[ 1, 0.00, 72712.41, 0], [1, 0.00, 72407.31, 0],

[1, 0.00, 72407.31, 0], [1, 0.00, 72201.89, 9111],

[1, 183.52, 0.00, 0], [1, 183.52, 0.00, 0],

[1, 0.00, 0.00, 2879], [1, 0.00, 0.00, 2698],

[1, 0.00, 0.00, 0], [1, 0.00, 0.00, 0],

[1, 0.00, 0.00, 19358], [1, 0.00, 0.00, 19001]

]

print(QuantReg(y, X).fit(q=.5).summary())

在R中:

^{pr2}$

R给出了

1.829800e+02,-9.003955e-03,-2.527093e-03,-5.697678e-05

而Python给出了以下内容

3.339e-05,-1.671e-09,-4.635e-10,7.957e-11

欢迎任何输入或提示。在

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python分位数回归是一种用于估计条件分位数的统计方法。所谓条件分位数是指给定一组自变量的情况下,预测因变量在特定分位数上的取值。 在Python,我们可以使用statsmodels库QuantReg模块来实现分位数回归。首先,我们需要准备好自变量和因变量的数据,并导入QuantReg模块。 ``` import statsmodels.api as sm # 准备自变量和因变量的数据 X = ... y = ... # 添加截距项 X = sm.add_constant(X) # 定义分位数回归模型 quantreg = sm.QuantReg(y, X) # 估计模型参数 results = quantreg.fit(q=0.5) # 打印模型参数估计结果 print(results.summary()) ``` 上述代码,我们首先将自变量X和因变量y准备好,并使用`sm.add_constant()`函数为自变量添加截距项。然后,我们调用`sm.QuantReg()`函数来定义分位数回归模型,并将自变量和因变量传入其。接着,我们使用`fit()`函数估计模型的参数,其`q=0.5`表示我们要估计的是位数。最后,我们打印模型参数估计结果。 分位数回归可以用于探索自变量对因变量不同分位数的影响,并提供更全面的预测能力。通过指定不同的分位数,我们可以得到在不同分位数下因变量的条件预测。在实际应用,可以根据具体问题的需要来选择合适的分位数进行回归分析。 总而言之,Python分位数回归方法可以帮助我们估计因变量在给定自变量条件下特定分位数上的取值,从而提供更全面的数据分析能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值