【问题标题】:How to extract coefficients from elrm summary output如何从 elrm 汇总输出中提取系数
【发布时间】:2012-07-01 07:33:45
【问题描述】:

我使用包 elrm 对我的数据集进行了精确的逻辑回归

我将它与普通的逻辑回归进行比较。

我能够在普通逻辑回归上运行引导程序,我提取的感兴趣的统计数据是估计系数和 p 值。

但是,我无法运行我的 elrm 引导程序,因为我无法从输出中提取所需的系数。

使用我的数据,摘要会打印出来:

Results:
   estimate p-value p-value_se mc_size
M  0.15116 0.06594    0.00443   49000

95% Confidence Intervals for Parameters

     lower     upper
M 0.00156155 0.3647232

我想提取 M 估计值和 p 值,以便在进行引导时提取这些统计数据。我尝试了一堆不同的组合来尝试提取值,但它们不起作用。

summary(model)$coefficient 
summary(model)$Results
summary(model)$estimate

所有这些只是再次吐出摘要。

有谁知道是否可以从 elrm 摘要中提取?

任何帮助将不胜感激。

【问题讨论】:

    标签: r extraction statistics-bootstrap


    【解决方案1】:

    看起来 p 值和置信区间是作为模型对象本身的一部分存储的。 summary.elrm 函数只是为您提取和格式化一些信息。我展示了我用来解决这个问题的以下步骤,但摘要版本是分别为 object$p.valuesobject$coeffs.ci 索引到您的模型对象本身。

    #Example from help page
    data(utiDat) 
    uti.elrm <- elrm(uti/n~age+current+dia+oc+pastyr+vi+vic+vicl+vis,
                     interest=~dia,r=4,iter=5000,burnIn=1000,dataset=utiDat)
    #Look at summary
    summary(uti.elrm)
    #Let's examine the structure of the summary object to see what's in there, i.e.
    #what can we extract?
    str(summary(uti.elrm))
    #Hmm, doesn't look like anything of interest. Let's look at the source code itself
    summary.elrm
    #Looks like the p.values are stored in the actual model object iself and the summary function
    #just formats them for us. The relevant part of the summary code for the p-value is:
    #-----
      #inferences = as.data.frame(cbind(round(as.numeric(object$coeffs),5), 
      #                                 round(as.numeric(object$p.values), 5), 
      #                                 round(as.numeric(object$p.values.se),5),
      #                                 object$mc.size)
      #                           )
      #results = data.frame(row.names = names(object$coeffs), inferences)
      #names(results) = c("estimate", "p-value", "p-value_se", "mc_size")
    #So, it looks like we can grab the p.values directly from "object"
    > uti.elrm$p.values
    dia 
    0.02225
    #And the confidence intervals are also in the object, located here in the summary code:
    #-----
      #cat(object$ci.level, "% Confidence Intervals for Parameters\n", 
      #    sep = "")
      #cat("\n")
      #print(object$coeffs.ci)
    #So we can extract them thusly:
    > uti.elrm$coeffs.ci
    lower upper
    dia 0.1256211   Inf
    

    【讨论】:

      【解决方案2】:
      library(elrm)
      data(drugDat)
      drug.elrm <- elrm(formula=recovered/n~sex+treatment,interest=~sex+treatment,r=4, 
          iter=100000,burnIn=1000,dataset=drugDat)
      
      > summary.elrm(drug.elrm)
      
      Call:
      [[1]]
      elrm(formula = recovered/n ~ sex + treatment, interest = ~sex + 
          treatment, r = 4, iter = 1e+05, dataset = drugDat, burnIn = 1000)
      
      
      Results:
                estimate p-value p-value_se mc_size
      joint           NA 0.14886    0.00173   99000
      sex        0.27092 0.69385    0.01204    2649
      treatment  0.76739 0.07226    0.00314   13160
      
      95% Confidence Intervals for Parameters
      
                     lower    upper
      sex       -0.6217756 1.212499
      treatment -0.1216884 1.852346
      
      # If you look at the summary function, it simply outputs formatted results to
      # the screen. So instead, we can just work with the original drug.elrm object
      
      names(drug.elrm)
      # shows you everything in this object
      
      # to see the p-values
      drug.elrm$p.values.se
            joint         sex   treatment 
      0.001734482 0.012039701 0.003143006 
      
      # to get the p-value for joint
      drug.elrm$p.values.se[[1]]
      
      # now for the CI
      drug.elrm$coeffs.ci
                     lower    upper
      sex       -0.6217756 1.212499
      treatment -0.1216884 1.852346
      
      > drug.elrm$coeffs.ci[[1]]
      [1] -0.6217756 -0.1216884
      > drug.elrm$coeffs.ci[[1]][1]
      [1] -0.6217756
      > 
      

      【讨论】:

      • +1 - 看起来我们在这里使用了非常相似的调试策略。
      猜你喜欢
      • 2013-08-15
      • 2016-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-19
      相关资源
      最近更新 更多