作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个分位数回归模型,其中包含 1 个回归变量和 1 个回归变量。我想假设检验回归量在每个分位数上都相等。我想到的一种方法是在 {0.01,0.02,....,0.99} 上测试所有 tau。但是,我将不得不写:
anova(model1,model2,model3,.......,model99)
,其中每个模型对应不同的 tau。 问题:如何让 anova() 接受大量类型为 rq
的模型,而无需手动输入它们?
我的解决方案尝试是这样做的:
y = rnorm(100)
x = rnorm(100)
rqs_object <- rq(y~x,tau=1:99/100)
anova(rqs_object)
但是,很遗憾,anova
显然不接受对象类型 rqs
,而只接受类型 rq
。
交叉发布here直到我决定它对这个问题有很大的编程/专家元素。
最佳答案
我专注于问题 1,并且只关注编程部分。
一些数据:
set.seed(65465)
y = rnorm(100)
x = rnorm(100)
现在我定义一个函数,它将 tau 作为输入并进行拟合:
rqfits <- function(tau) {
require(quantreg)
rq(y~x,tau=tau)
}
然后我可以将此函数应用于 taus 向量:
taus <- 1:5/10
fits <- lapply(taus,rqfits)
结果是模型列表。我们现在可以使用 do.call
将我们的模型传递给 anova
:
do.call(anova,fits)
Quantile Regression Analysis of Deviance Table
Model: y ~ x
Joint Test of Equality of Slopes: tau in { 0.1 0.2 0.3 0.4 0.5 }
Df Resid Df F value Pr(>F)
1 4 496 1.0388 0.3866
Warning:
In summary.rq(x, se = se, covariance = TRUE) : 2 non-positive fis
关于r - (R,量化): Hypothesis testing a large range of quantiles,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12120064/
我是一名优秀的程序员,十分优秀!