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
-
logitmfx
、negbinmfx
、poissonmfx
或probitmfx
對象。 (請注意,betamfx
對象接收自己的一組整理器。) - conf.int
-
邏輯指示是否在整理的輸出中包含置信區間。默認為
FALSE
。 - conf.level
-
用於置信區間的置信水平(如果
conf.int = TRUE
)。必須嚴格大於 0 且小於 1。默認為 0.95,對應於 95% 的置信區間。 - ...
-
附加參數。不曾用過。僅需要匹配通用簽名。注意:拚寫錯誤的參數將被吸收到
...
中,並被忽略。如果拚寫錯誤的參數有默認值,則將使用默認值。例如,如果您傳遞conf.lvel = 0.9
,所有計算將使用conf.level = 0.95
進行。這裏有兩個異常:
細節
mfx
包提供了計算各種廣義線性模型 (GLM) 邊際效應的方法。與標準線性模型不同,GLM 中的估計模型係數不能直接解釋為邊際效應(即回歸變量之一發生一單位變化後預測的響應變量的變化)。這是因為估計係數是乘法的,取決於用於估計的鏈接函數和模型中包含的任何其他變量。在計算邊際效應時,用戶通常必須選擇是否要使用 i) 數據中的平均觀察值,或 ii) 樣本邊際效應的平均值。有關更多詳細信息,請參閱mfx
包中的vignette("mfxarticle")
。
也可以看看
tidy()
, mfx::logitmfx()
, mfx::negbinmfx()
, mfx::poissonmfx()
, mfx::probitmfx()
其他 mfx 整理器:augment.betamfx()
、augment.mfx()
、glance.betamfx()
、glance.mfx()
、tidy.betamfx()
值
帶有列的 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 broom tidy.map 整理 a(n) Map對象
- R broom tidy.margins 整理 a(n) 邊距對象
- R broom tidy.mlogit Logit模型的整理方法
- R broom tidy.mlm 整理 a(n) 傳銷對象
- R broom tidy.mjoint 整理 a(n) mjoint 對象
- R broom tidy.manova 整理 a(n) 方差分析對象
- R broom tidy.muhaz 整理 a(n) muhaz 對象
- R broom tidy.mediate 整理 a(n) 中介對象
- R broom tidy.mle2 整理 a(n) mle2 對象
- R broom tidy.multinom 多項邏輯回歸模型的整理方法
- R broom tidy.robustbase.glmrob 整理 a(n) glmrob 對象
- R broom tidy.acf 整理 a(n) acf 對象
- R broom tidy.robustbase.lmrob 整理 a(n) lmrob 對象
- R broom tidy.biglm 整理 a(n) biglm 對象
- R broom tidy.garch 整理 a(n) garch 對象
- R broom tidy.rq 整理 a(n) rq 對象
- R broom tidy.kmeans 整理 a(n) kmeans 對象
- R broom tidy.betamfx 整理 a(n) betamfx 對象
- R broom tidy.anova 整理 a(n) anova 對象
- R broom tidy.btergm 整理 a(n) btergm 對象
- R broom tidy.cv.glmnet 整理 a(n) cv.glmnet 對象
- R broom tidy.roc 整理 a(n) roc 對象
- R broom tidy.poLCA 整理 a(n) poLCA 對象
- R broom tidy.emmGrid 整理 a(n) emmGrid 對象
- R broom tidy.Kendall 整理 a(n) Kendall 對象
注:本文由純淨天空篩選整理自等大神的英文原創作品 Tidy a(n) mfx object。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。