首页 文章

如何对R回归模型中的Bootstrap预测和置信水平

提问于
浏览
0

我在R中使用一个定量预测变量( amplitude = 40,50,60,70)在比例数据上运行β回归模型 . 我已经能够从模型中获得40,50,60,70比例的预测并绘制它 .

我从围绕这个网站和其他人的研究中了解到,从β回归模型获得预测的置信区间与其他模型不同 . 我已经读过这个以获得β回归模型的置信水平,从模型中引导预测是获得置信区间/带的一种方式(如其他帖子中所述,例如Achim Zeileis在线程上:https://stats.stackexchange.com/questions/230501/variance-vs-standard-deviation-in-beta-regression?noredirect=1&lq=1) . 我的问题是如何实际进行这种提升以获得R中我的模型预测的预测和置信水平?理想情况下,我希望得到幅度比例的预测:40,50,60和70,并且有一定程度的信心 . 我对引导是一个新手,所以如果有人能够深入了解如何从beta回归模型中引导预测和置信区间,那将是很好的 .

1 回答

  • 0

    不确定您正在寻找什么,但 boot 包可能提供解决方案 . 这是一个玩具示例,使用随机数据来引导回归:

    library(boot)
        library(xts)
        set.seed(789)
        dat <- xts(matrix(rnorm(1200), nrow=240, ncol=5), 
                   as.Date(c(seq(as.Date("1990/1/1"), by = "month", length.out = 240))))
        colnames(dat) <-c("A", "B", "C", "D", "E")
    
        function.1 <-function(formula, dat, x) {
          a <-dat[x,]
          output <-lm(formula, data=a)
          return(coef(output))
        }
    
        results <- boot(data=dat, 
                        statistic=function.1,
                        R=1000, 
                        formula=A ~ .)
    
        results.ci <-boot.ci(results, type="basic", index=2)
    
    results
    
    ORDINARY NONPARAMETRIC BOOTSTRAP
    
    Call:
    boot(data = dat, statistic = function.1, R = 1000, formula = A ~ 
        .)
    
    
    Bootstrap Statistics :
           original        bias    std. error
    t1* -0.06716150  0.0029368176  0.06517814
    t2* -0.04582073 -0.0050721571  0.07658141
    t3*  0.14324494  0.0010631253  0.06500446
    t4*  0.06771263 -0.0028811702  0.06247530
    t5*  0.05620244  0.0005347628  0.06102209
    
    results.ci
    BOOTSTRAP CONFIDENCE INTERVAL CALCULATIONS
    Based on 1000 bootstrap replicates
    
    CALL : 
    boot.ci(boot.out = results, type = "basic", index = 2)
    
    Intervals : 
    Level      Basic         
    95%   (-0.1960,  0.1015 )  
    Calculations and Intervals on Original Scale
    

相关问题