【问题标题】:How to add bootstrap CI into this function in R如何在 R 中将引导 CI 添加到此函数中
【发布时间】:2017-10-06 11:36:48
【问题描述】:

我想计算这两个估计的 90% 置信区间 (Bootstrap)。 Harrell-Davis 无分布分位数估计器。我认为这个函数是估计均值和标准差的非参数分位数的自举版本。现在我想知道如何计算 90% CI?

library(Hmisc)
x <- runif(100)
hdquantile(x, probs =  seq(0.025, 0.975,0.95), se=TRUE,names = TRUE, weights=FALSE)

【问题讨论】:

    标签: statistics-bootstrap


    【解决方案1】:

    如果您设置 se=TRUE,hdquantile 函数会计算估计量并给出标准误差。要找到置信区间,您可以通过 boot 函数引导它并通过 boot.ci 获取置信区间

    代码

    library(Hmisc)
    x <- runif(100)
    hdquantile(x, probs =  seq(0.025, 0.975,0.95), se=TRUE,names = TRUE, 
    weights=FALSE)
    

    为引导创建一个统计数据

    library(boot)
    hq <- function(x,i) {
    hdquantile(x[i], probs =  seq(0.025, 0.975,0.95), se=TRUE,names = TRUE, 
    weights=FALSE)
    }
    bootx <- boot(x,hq,1000)
    boot.ci(bootx, conf = 0.90)
    

    【讨论】:

    • 非常感谢。我想同时计算 q=0.025 和 q=0.975 的 90%。我想知道如何修改您的代码以使两个分位数都具有 90% CI。我还检查了您创建的函数的结果, Normal、Basic 、Studentized、Percentile 和 BCa 有什么区别。我应该选择哪一个?
    • 如果您想计算两者的 90%。您可以在循环内部修改以获得两个 hdquantile 结果。然后,您可以通过在 boot.ci 中指定索引来分别为它们运行 boot.ci。有关 boot.ci 和 boostrap 间隔的更多信息,请参阅 here
    猜你喜欢
    • 1970-01-01
    • 2018-04-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多