【问题标题】:Weighted Median bootstrap加权中值引导
【发布时间】:2016-05-16 08:00:55
【问题描述】:

目前我通过使用这个获得了中位数的 95% CI

x<-rnorm(100)
        bootmed = apply(matrix(sample(x, rep=TRUE, 10^4*length(x)), nrow=10^4), 1, median)
    quantile(bootmed, c(.025, 0.975))[1]->a1
    quantile(bootmed, c(.025, 0.975))[2]->a2

现在的问题是我需要为加权中位数执行此操作。我使用matrixStats 包中的weightedMedian 函数:matrixStats::weightedMedian

所以我不仅有带有数字的 x,还有带有权重的 y (runif(100)) - 所以现在我计算

weightedMedian(x,runif(100))

但上述引导程序的等效项如何?

【问题讨论】:

  • 没人知道吗?

标签: r median statistics-bootstrap


【解决方案1】:

apply() 函数的... 参数允许您将可选参数传递给您的函数。或者,您也可以定义自定义函数。假设所有行的中值权重相同,您的问题的答案如下所示:

x <- rnorm(100)
y <- rnorm(100)
M <- matrix(sample(x, rep=TRUE, 10^4*length(x)), nrow=10^4)

bootmed = apply(M, 1, weightedMedian, w=y)
# Or, alternatively..
bootmed = apply(M, 1, function(x) weightedMedian(x,y))

【讨论】:

    猜你喜欢
    • 2018-08-08
    • 2018-02-24
    • 2022-01-14
    • 2022-01-14
    • 1970-01-01
    • 1970-01-01
    • 2019-11-09
    • 2012-04-05
    • 1970-01-01
    相关资源
    最近更新 更多