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


R broom tidy.mfx 整理 a(n) mfx 對象


Tidy 總結了有關模型組件的信息。模型組件可能是回歸中的單個項、單個假設、聚類或類。 tidy 所認為的模型組件的確切含義因模型而異,但通常是不言而喻的。如果模型具有多種不同類型的組件,您將需要指定要返回哪些組件。

下麵的特定函數為 mfx 包返回的對象提供通用的整潔方法,保留計算的邊際效應而不是樸素的模型係數。返回的整潔的 tibble 還將包括一個附加的 "atmean" 列,指示邊際效應最初是如何計算的(請參閱下麵的詳細信息)。

用法

# S3 method for mfx
tidy(x, conf.int = FALSE, conf.level = 0.95, ...)

# S3 method for logitmfx
tidy(x, conf.int = FALSE, conf.level = 0.95, ...)

# S3 method for negbinmfx
tidy(x, conf.int = FALSE, conf.level = 0.95, ...)

# S3 method for poissonmfx
tidy(x, conf.int = FALSE, conf.level = 0.95, ...)

# S3 method for probitmfx
tidy(x, conf.int = FALSE, conf.level = 0.95, ...)

參數

x

logitmfxnegbinmfxpoissonmfxprobitmfx 對象。 (請注意,betamfx 對象接收自己的一組整理器。)

conf.int

邏輯指示是否在整理的輸出中包含置信區間。默認為 FALSE

conf.level

用於置信區間的置信水平(如果 conf.int = TRUE )。必須嚴格大於 0 且小於 1。默認為 0.95,對應於 95% 的置信區間。

...

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

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

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

細節

mfx 包提供了計算各種廣義線性模型 (GLM) 邊際效應的方法。與標準線性模型不同,GLM 中的估計模型係數不能直接解釋為邊際效應(即回歸變量之一發生一單位變化後預測的響應變量的變化)。這是因為估計係數是乘法的,取決於用於估計的鏈接函數和模型中包含的任何其他變量。在計算邊際效應時,用戶通常必須選擇是否要使用 i) 數據中的平均觀察值,或 ii) 樣本邊際效應的平均值。有關更多詳細信息,請參閱mfx 包中的vignette("mfxarticle")

帶有列的 tibble::tibble()

conf.high

估計置信區間的上限。

conf.low

估計置信區間的下限。

estimate

回歸項的估計值。

p.value

與觀察到的統計量相關的兩側 p 值。

statistic

在回歸項非零的假設中使用的 T-statistic 的值。

std.error

回歸項的標準誤差。

term

回歸項的名稱。

atmean

如果邊際效應最初計算為平均觀測值的部分效應,則為 TRUE。如果為 FALSE,則將這些計算為平均部分效應。

例子


# load libraries for models and data
library(mfx)

# get the marginal effects from a logit regression
mod_logmfx <- logitmfx(am ~ cyl + hp + wt, atmean = TRUE, data = mtcars)

tidy(mod_logmfx, conf.int = TRUE)
#> # A tibble: 3 × 8
#>   term  atmean estimate std.error statistic p.value conf.low conf.high
#>   <chr> <lgl>     <dbl>     <dbl>     <dbl>   <dbl>    <dbl>     <dbl>
#> 1 cyl   TRUE    0.0538    0.113       0.475   0.635 -0.178     0.286  
#> 2 hp    TRUE    0.00359   0.00290     1.24    0.216 -0.00236   0.00954
#> 3 wt    TRUE   -1.01      0.668      -1.51    0.131 -2.38      0.359  

# compare with the naive model coefficients of the same logit call
tidy(
  glm(am ~ cyl + hp + wt, family = binomial, data = mtcars),
  conf.int = TRUE
)
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
#> # A tibble: 4 × 7
#>   term        estimate std.error statistic p.value  conf.low conf.high
#>   <chr>          <dbl>     <dbl>     <dbl>   <dbl>     <dbl>     <dbl>
#> 1 (Intercept)  19.7       8.12       2.43   0.0152   8.56      44.3   
#> 2 cyl           0.488     1.07       0.455  0.649   -1.53       3.12  
#> 3 hp            0.0326    0.0189     1.73   0.0840   0.00332    0.0884
#> 4 wt           -9.15      4.15      -2.20   0.0276 -21.4       -3.48  

augment(mod_logmfx)
#> # A tibble: 32 × 11
#>    .rownames    am   cyl    hp    wt .fitted  .resid   .hat .sigma .cooksd
#>    <chr>     <dbl> <dbl> <dbl> <dbl>   <dbl>   <dbl>  <dbl>  <dbl>   <dbl>
#>  1 Mazda RX4     1     6   110  2.62  2.24    0.449  0.278   0.595 1.42e-2
#>  2 Mazda RX…     1     6   110  2.88 -0.0912  1.22   0.352   0.529 2.30e-1
#>  3 Datsun 7…     1     4    93  2.32  3.46    0.249  0.0960  0.602 9.26e-4
#>  4 Hornet 4…     0     6   110  3.22 -3.20   -0.282  0.0945  0.601 1.17e-3
#>  5 Hornet S…     0     8   175  3.44 -2.17   -0.466  0.220   0.595 1.03e-2
#>  6 Valiant       0     6   105  3.46 -5.61   -0.0856 0.0221  0.604 2.12e-5
#>  7 Duster 3…     0     8   245  3.57 -1.07   -0.766  0.337   0.576 6.55e-2
#>  8 Merc 240D     0     4    62  3.19 -5.51   -0.0897 0.0376  0.603 4.10e-5
#>  9 Merc 230      0     4    95  3.15 -4.07   -0.184  0.122   0.603 6.76e-4
#> 10 Merc 280      0     6   123  3.44 -4.84   -0.126  0.0375  0.603 8.02e-5
#> # ℹ 22 more rows
#> # ℹ 1 more variable: .std.resid <dbl>
glance(mod_logmfx)
#> # A tibble: 1 × 8
#>   null.deviance df.null logLik   AIC   BIC deviance df.residual  nobs
#>           <dbl>   <int>  <dbl> <dbl> <dbl>    <dbl>       <int> <int>
#> 1          43.2      31  -4.92  17.8  23.7     9.84          28    32

# another example, this time using probit regression
mod_probmfx <- probitmfx(am ~ cyl + hp + wt, atmean = TRUE, data = mtcars)
#> Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred

tidy(mod_probmfx, conf.int = TRUE)
#> # A tibble: 3 × 8
#>   term  atmean estimate std.error statistic p.value conf.low conf.high
#>   <chr> <lgl>     <dbl>     <dbl>     <dbl>   <dbl>    <dbl>     <dbl>
#> 1 cyl   TRUE    0.0616    0.112       0.548  0.583  -0.169     0.292  
#> 2 hp    TRUE    0.00383   0.00282     1.36   0.174  -0.00194   0.00960
#> 3 wt    TRUE   -1.06      0.594      -1.78   0.0753 -2.27      0.160  
augment(mod_probmfx)
#> # A tibble: 32 × 11
#>    .rownames    am   cyl    hp    wt .fitted  .resid   .hat .sigma .cooksd
#>    <chr>     <dbl> <dbl> <dbl> <dbl>   <dbl>   <dbl>  <dbl>  <dbl>   <dbl>
#>  1 Mazda RX4     1     6   110  2.62   1.21   0.490  0.308   0.585 2.05e-2
#>  2 Mazda RX…     1     6   110  2.88  -0.129  1.27   0.249   0.526 1.36e-1
#>  3 Datsun 7…     1     4    93  2.32   1.85   0.256  0.134   0.594 1.48e-3
#>  4 Hornet 4…     0     6   110  3.22  -1.92  -0.237  0.116   0.594 1.05e-3
#>  5 Hornet S…     0     8   175  3.44  -1.25  -0.474  0.236   0.587 1.20e-2
#>  6 Valiant       0     6   105  3.46  -3.30  -0.0312 0.0111  0.596 1.39e-6
#>  7 Duster 3…     0     8   245  3.57  -0.595 -0.804  0.285   0.567 5.32e-2
#>  8 Merc 240D     0     4    62  3.19  -3.31  -0.0304 0.0179  0.596 2.15e-6
#>  9 Merc 230      0     4    95  3.15  -2.47  -0.116  0.130   0.596 2.89e-4
#> 10 Merc 280      0     6   123  3.44  -2.85  -0.0662 0.0315  0.596 1.84e-5
#> # ℹ 22 more rows
#> # ℹ 1 more variable: .std.resid <dbl>
glance(mod_probmfx)
#> # A tibble: 1 × 8
#>   null.deviance df.null logLik   AIC   BIC deviance df.residual  nobs
#>           <dbl>   <int>  <dbl> <dbl> <dbl>    <dbl>       <int> <int>
#> 1          43.2      31  -4.80  17.6  23.5     9.59          28    32
源代碼:R/mfx-tidiers.R

相關用法


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