Tidy 总结了有关模型组件的信息。模型组件可能是回归中的单个项、单个假设、聚类或类。 tidy 所认为的模型组件的确切含义因模型而异,但通常是不言而喻的。如果模型具有多种不同类型的组件,您将需要指定要返回哪些组件。
参数
- x
-
从调用
geepack::geeglm()
返回的geeglm
对象。 - conf.int
-
逻辑指示是否在整理的输出中包含置信区间。默认为
FALSE
。 - conf.level
-
用于置信区间的置信水平(如果
conf.int = TRUE
)。必须严格大于 0 且小于 1。默认为 0.95,对应于 95% 的置信区间。 - exponentiate
-
逻辑指示是否对系数估计值取幂。这对于逻辑回归和多项回归来说是典型的,但如果没有 log 或 logit 链接,那么这是一个坏主意。默认为
FALSE
。 - ...
-
附加参数。不曾用过。仅需要匹配通用签名。注意:拼写错误的参数将被吸收到
...
中,并被忽略。如果拼写错误的参数有默认值,则将使用默认值。例如,如果您传递conf.lvel = 0.9
,所有计算将使用conf.level = 0.95
进行。这里有两个异常:
细节
如果 conf.int = TRUE
,则使用内部 confint.geeglm()
函数计算置信区间。
如果模型数据中存在缺失值,则可能需要使用 na.action = na.exclude
重新拟合模型或预先处理数据中的缺失值。
值
带有列的 tibble::tibble()
:
- conf.high
-
估计置信区间的上限。
- conf.low
-
估计置信区间的下限。
- estimate
-
回归项的估计值。
- p.value
-
与观察到的统计量相关的两侧 p 值。
- statistic
-
在回归项非零的假设中使用的 T-statistic 的值。
- std.error
-
回归项的标准误差。
- term
-
回归项的名称。
例子
# load modeling library
library(geepack)
# load data
data(state)
ds <- data.frame(state.region, state.x77)
# fit model
geefit <- geeglm(Income ~ Frost + Murder,
id = state.region,
data = ds, family = gaussian,
corstr = "exchangeable"
)
#> $fct
#> function (dose, parm)
#> {
#> parmMat <- matrix(parmVec, nrow(parm), numParm, byrow = TRUE)
#> parmMat[, notFixed] <- parm
#> fd(dose, parmMat[, 1], parmMat[, 2], parmMat[, 3], parmMat[,
#> 4], parmMat[, 5])
#> }
#> <bytecode: 0x55e23e706478>
#> <environment: 0x55e24e6f80a0>
#>
#> $ssfct
#> function (dframe)
#> {
#> x <- dframe[, 1]
#> y <- dframe[, 2]
#> cdVal <- findcd(x, y)
#> if (useFixed) {
#> }
#> if (logg) {
#> bVal <- 0.75 * sd(log(x[y > quantile(y, 0.75)]))
#> }
#> else {
#> bVal <- 0.75 * sd(x[y > quantile(y, 0.75)])
#> }
#> befVal <- c(bVal, x[which.max(y)], 1)
#> return(c(befVal[1], cdVal, befVal[2:3])[is.na(fixed)])
#> }
#> <bytecode: 0x55e2489927a8>
#> <environment: 0x55e24e6f8ca8>
#>
#> $names
#> [1] "b" "c" "d" "e" "f"
#>
#> $deriv1
#> function (dose, parm)
#> {
#> parmMat <- matrix(parmVec, nrow(parm), numParm, byrow = TRUE)
#> parmMat[, notFixed] <- parm
#> attr(fd(dose, parmMat[, 1], parmMat[, 2], parmMat[, 3], parmMat[,
#> 4], parmMat[, 5]), "gradient")[, notFixed]
#> }
#> <bytecode: 0x55e23e703950>
#> <environment: 0x55e24e6f80a0>
#>
#> $deriv2
#> NULL
#>
#> $derivx
#> function (dose, parm)
#> {
#> parmMat <- matrix(parmVec, nrow(parm), numParm, byrow = TRUE)
#> parmMat[, notFixed] <- parm
#> dFct <- function(dose, b, c, d, e, f) {
#> .expr1 <- d - c
#> .expr4 <- (dose - e)/b
#> .expr5 <- .expr4^2
#> .expr6 <- sqrt(.expr5)
#> .expr9 <- exp(-0.5 * .expr6^f)
#> .value <- c + .expr1 * .expr9
#> .grad <- array(0, c(length(.value), 1L), list(NULL, c("dose")))
#> .grad[, "dose"] <- -(.expr1 * (.expr9 * (0.5 * (.expr6^(f -
#> 1) * (f * (0.5 * (2 * (1/b * .expr4) * .expr5^-0.5)))))))
#> attr(.value, "gradient") <- .grad
#> .value
#> }
#> attr(dFct(dose, parmMat[, 1], parmMat[, 2], parmMat[, 3],
#> parmMat[, 4], parmMat[, 5]), "gradient")
#> }
#> <bytecode: 0x55e23e701d40>
#> <environment: 0x55e24e6f80a0>
#>
#> $edfct
#> function (parm, respl, reference, type, ...)
#> {
#> parmVec[notFixed] <- parm
#> p <- absToRel(parmVec, abs(respl), type)
#> if (identical(type, "absolute")) {
#> p <- 100 - p
#> }
#> if (identical(type, "relative") && (parmVec[1] < 0) && (reference ==
#> "control")) {
#> p <- 100 - p
#> }
#> pProp <- 1 - (100 - p)/100
#> EDfct <- function(b, c, d, e, f) {
#> .expr2 <- -2 * log(pProp)
#> .expr4 <- sign(respl) * .expr2^(1/f)
#> .value <- b * .expr4 + e
#> .grad <- array(0, c(length(.value), 5L), list(NULL, c("b",
#> "c", "d", "e", "f")))
#> .grad[, "b"] <- .expr4
#> .grad[, "c"] <- 0
#> .grad[, "d"] <- 0
#> .grad[, "e"] <- 1
#> .grad[, "f"] <- -(b * (.expr4 * (log(.expr2) * (1/f^2))))
#> attr(.value, "gradient") <- .grad
#> .value
#> }
#> EDp <- EDfct(parmVec[1], parmVec[2], parmVec[3], parmVec[4],
#> parmVec[5])
#> EDder <- attr(EDfct(parmVec[1], parmVec[2], parmVec[3], parmVec[4],
#> parmVec[5]), "gradient")
#> return(list(EDp, EDder[notFixed]))
#> }
#> <bytecode: 0x55e23e6f8b78>
#> <environment: 0x55e24e6f80a0>
#>
#> $name
#> [1] "family"
#>
#> $text
#> [1] "Gaussian"
#>
#> $noParm
#> [1] 5
#>
#> $lowerAs
#> function (parm)
#> {
#> parmVec[indexVec] <- parm
#> parmVec[parmNo]
#> }
#> <bytecode: 0x55e23be053c0>
#> <environment: 0x55e2580f7488>
#>
#> $upperAs
#> function (parm)
#> {
#> parmVec[indexVec] <- parm
#> parmVec[parmNo]
#> }
#> <bytecode: 0x55e23be053c0>
#> <environment: 0x55e2580f76f0>
#>
#> $monoton
#> [1] NA
#>
#> $fixed
#> [1] NA NA NA NA NA
#>
#> attr(,"class")
#> [1] "gaussian"
#> Error in glm(formula = Income ~ Frost + Murder, family = gaussian, data = ds): 'family' not recognized
# summarize model fit with tidiers
tidy(geefit)
#> Error in eval(expr, envir, enclos): object 'geefit' not found
tidy(geefit, conf.int = TRUE)
#> Error in eval(expr, envir, enclos): object 'geefit' not found
相关用法
- R broom tidy.garch 整理 a(n) garch 对象
- R broom tidy.glmnet 整理 a(n) glmnet 对象
- R broom tidy.glmRob 整理 a(n) glmRob 对象
- R broom tidy.gam 整理 a(n) gam 对象
- R broom tidy.glht 整理 a(n) glht 对象
- R broom tidy.gmm 整理 a(n) gmm 对象
- 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.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 对象
- R broom tidy.survreg 整理 a(n) survreg 对象
- R broom tidy.ergm 整理 a(n) ergm 对象
- R broom tidy.pairwise.htest 整理 a(n)pairwise.htest 对象
- R broom tidy.coeftest 整理 a(n) coeftest 对象
- R broom tidy.polr 整理 a(n) polr 对象
注:本文由纯净天空筛选整理自等大神的英文原创作品 Tidy a(n) geeglm object。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。