首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用鲁棒线性方法从python模块“状态模型”的权重?

使用鲁棒线性方法从python模块“状态模型”的权重?
EN

Stack Overflow用户
提问于 2014-02-13 13:08:00
回答 1查看 1.7K关注 0票数 1

我有一些数据,y有误差,y_err,测量值为x。我需要拟合一条直线,以模拟matlab中的一些代码,特别是具有稳健"on“的拟合方法,并将权重设为1/yerr。matlab文档称它使用了bisquare方法(也称为TukeyBiweight方法)。目前为止我的代码是..。

代码语言:javascript
运行
复制
    rlm_model = sm.RLM(y, x, M=sm.robust.norms.TukeyBiweight())
    rlm_results = rlm_model.fit()
    print rlm_results.params

然而,我需要找到一种方法,包括来自yerr的权重。希望大家能帮忙,这是我第一次尝试使用状态模型模块。

第一个回答是:我试过了;

代码语言:javascript
运行
复制
y=y*(yerr)
x=x*(yerr)

x=sm.add_constant(x, prepend=False)
rlm_model = sm.RLM(y, x, M=sm.robust.norms.TukeyBiweight())
results=rlm_model.fit()

但遗憾的是,这与matlab函数不匹配。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-13 17:13:30

反映异方差的权值,即不同观测值的不等方差,还没有得到状态模型RLM的支持。

作为解决办法,您可以在调用RLM时将y和x除以yerr。

我认为,与加权最小二乘法类似,在这种情况下,参数估计、它们的标准误差和其他统计量仍然是正确的。但我还没查过。

作为参考:

卡罗尔雷蒙德J.和大卫鲁珀特。异方差线性模型的鲁棒估计统计年鉴(1982年):429-441。

它们还估计了方差函数,但是对于固定的权重1/sigma_i,优化只是使用

(y_i - x_iβ)/ sigma_i

权重1/sigma_i将仅为相对权重,并且仍将与误差尺度的稳健估计相乘。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21755153

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档