當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R broom augment.rma 使用來自 rma 對象的信息增強數據


Augment 接受模型對象和數據集,並添加有關數據集中每個觀察值的信息。最常見的是,這包括 .fitted 列中的預測值、.resid 列中的殘差以及 .se.fit 列中擬合值的標準誤差。新列始終以 . 前綴開頭,以避免覆蓋原始數據集中的列。

用戶可以通過 data 參數或 newdata 參數傳遞數據以進行增強。如果用戶將數據傳遞給 data 參數,則它必須正是用於擬合模型對象的數據。將數據集傳遞給 newdata 以擴充模型擬合期間未使用的數據。這仍然要求至少存在用於擬合模型的所有預測變量列。如果用於擬合模型的原始結果變量未包含在 newdata 中,則輸出中不會包含 .resid 列。

根據是否給出 datanewdata,增強的行為通常會有所不同。這是因為通常存在與訓練觀察(例如影響或相關)測量相關的信息,而這些信息對於新觀察沒有有意義的定義。

為了方便起見,許多增強方法提供默認的 data 參數,以便 augment(fit) 將返回增強的訓練數據。在這些情況下,augment 嘗試根據模型對象重建原始數據,並取得了不同程度的成功。

增強數據集始終以 tibble::tibble 形式返回,其行數與傳遞的數據集相同。這意味著傳遞的數據必須可強製轉換為 tibble。如果預測變量將模型作為協變量矩陣的一部分輸入,例如當模型公式使用 splines::ns()stats::poly()survival::Surv() 時,它會表示為矩陣列。

我們正在定義適合各種 na.action 參數的模型的行為,但目前不保證數據丟失時的行為。

用法

# S3 method for rma
augment(x, interval = c("prediction", "confidence"), ...)

參數

x

rma 對象,例如由 metafor::rma()metafor::rma.uni()metafor::rma.glmm()metafor::rma.mh()metafor::rma.mv()metafor::rma.peto() 創建的對象。

interval

對於 rma.mv 模型,是否應該返回預測區間("prediction",默認值)或置信區間("confidence")區間?對於rma.uni 模型,始終返回預測區間。對於 rma.mhrma.peto 模型,始終返回置信區間。

...

附加參數。不曾用過。僅需要匹配通用簽名。注意:拚寫錯誤的參數將被吸收到 ... 中,並被忽略。如果拚寫錯誤的參數有默認值,則將使用默認值。例如,如果您傳遞 conf.lvel = 0.9 ,所有計算將使用 conf.level = 0.95 進行。這裏有兩個異常:

  • tidy() 方法在提供 exponentiate 參數時會發出警告(如果該參數將被忽略)。

  • augment() 方法在提供 newdata 參數時會發出警告(如果該參數將被忽略)。

帶有列的 tibble::tibble()

.fitted

擬合值或預測值。

.lower

擬合值的區間下限。

.moderator

在meta-analysis中,調節器用於計算預測值。

.moderator.level

在meta-analysis中,用於計算預測值的調節器級別。

.resid

觀察值和擬合值之間的差異。

.se.fit

擬合值的標準誤差。

.upper

擬合值的區間上限。

.observed

個別研究的觀察值

例子


# load modeling library
library(metafor)
#> Loading required package: metadat
#> Loading required package: numDeriv
#> 
#> Loading the 'metafor' package (version 4.2-0). For an
#> introduction to the package please type: help(metafor)
#> 
#> Attaching package: ‘metafor’
#> The following object is masked from ‘package:car’:
#> 
#>     vif
#> The following object is masked from ‘package:mclust’:
#> 
#>     hc

# generate data and fit
df <-
  escalc(
    measure = "RR",
    ai = tpos,
    bi = tneg,
    ci = cpos,
    di = cneg,
    data = dat.bcg
  )

meta_analysis <- rma(yi, vi, data = df, method = "EB")

# summarize model fit with tidiers
augment(meta_analysis)
#> # A tibble: 13 × 6
#>    .observed  .fitted .se.fit .lower   .upper  .resid
#>        <dbl>    <dbl>   <dbl>  <dbl>    <dbl>   <dbl>
#>  1   -0.889  -0.801    0.411  -1.61   0.00524 -0.174 
#>  2   -1.59   -1.26     0.354  -1.95  -0.561   -0.870 
#>  3   -1.35   -0.990    0.437  -1.85  -0.134   -0.633 
#>  4   -1.44   -1.40     0.138  -1.67  -1.13    -0.727 
#>  5   -0.218  -0.287    0.212  -0.701  0.128    0.497 
#>  6   -0.786  -0.785    0.0823 -0.946 -0.623   -0.0711
#>  7   -1.62   -1.25     0.370  -1.97  -0.523   -0.906 
#>  8    0.0120  0.00301  0.0626 -0.120  0.126    0.727 
#>  9   -0.469  -0.506    0.221  -0.939 -0.0740   0.246 
#> 10   -1.37   -1.25     0.246  -1.73  -0.767   -0.656 
#> 11   -0.339  -0.353    0.110  -0.568 -0.139    0.376 
#> 12    0.446  -0.281    0.460  -1.18   0.621    1.16  
#> 13   -0.0173 -0.145    0.244  -0.623  0.333    0.698 

相關用法


注:本文由純淨天空篩選整理自大神的英文原創作品 Augment data with information from a(n) rma object。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。