具有多重插补数据的二元逻辑回归
Binary logistic regression with multiply imputed data
我一直在尝试使用 R(即 MICE)中可用的选项来进行二元逻辑回归分析(在连续预测变量和分类预测变量之间进行交互)。
但是,我正在努力对乘法估算数据进行这种简单的分析(详细信息和可重现的示例 here)。
具体来说,我无法找到一种方法来汇集输出的各个方面,包括使用 Mice 的 GLM 函数 'log likelihood ratio' 的等价物。
为了避免之前 post 的冗余,我正在寻求任何关于 R 包或其他软件的建议,这些建议可能 easy/possible 汇集二元逻辑回归输出的所有基本组成部分(即相当于模型似然比检验、回归系数、wald 检验)。请参见下面的示例,该示例是我能够在非估算数据上使用 rms 获得的(无法找到一种方法 运行 在乘法估算数据上使用此方法)
> mylogit
Frequencies of Missing Values Due to Each Variable
P1 ST P8
18 0 31
Logistic Regression Model
lrm(formula = P1 ~ ST + P8 + ST * P8, data = PS, x = TRUE,
y = TRUE)
Model Likelihood Discrimination Rank Discrim.
Ratio Test Indexes Indexes
Obs 362 LR chi2 18.34 R2 0.077 C 0.652
0 287 d.f. 9 g 0.664 Dxy 0.304
1 75 Pr(> chi2) 0.0314 gr 1.943 gamma 0.311
max |deriv| 8e-08 gp 0.099 tau-a 0.100 Brier 0.155
Coef S.E. Wald Z Pr(>|Z|)
Intercept -0.5509 0.3388 -1.63 0.1040
ST= 2 -0.5688 0.4568 -1.25 0.2131
ST= 3 -0.7654 0.4310 -1.78 0.0757
ST= 4 -0.7995 0.5229 -1.53 0.1263
ST= 5 -1.2813 0.4276 -3.00 0.0027
P8 0.2162 0.4189 0.52 0.6058
ST= 2 * P8 -0.1527 0.5128 -0.30 0.7659
ST= 3 * P8 -0.0461 0.5130 -0.09 0.9285
ST= 4 * P8 -0.5031 0.5635 -0.89 0.3719
ST= 5 * P8 0.3661 0.4734 0.77 0.4393
总而言之,我的问题是:1) package/software 能够处理乘法估算数据以完成传统的二元逻辑回归分析,尤其是交互项 2) 我需要采取的可能步骤运行那个程序中的分析
rms package 具有使用 fit.mult.impute()
函数组合乘法插补数据的强大功能。这是一个小的工作示例:
dat <- mtcars
## introduce NAs
dat[sample(rownames(dat), 10), "cyl"] <- NA
im <- aregImpute(~ cyl + wt + mpg + am, data = dat)
fit.mult.impute(am ~ cyl + wt + mpg, xtrans = im, data = dat, fitter = lrm)
我一直在尝试使用 R(即 MICE)中可用的选项来进行二元逻辑回归分析(在连续预测变量和分类预测变量之间进行交互)。
但是,我正在努力对乘法估算数据进行这种简单的分析(详细信息和可重现的示例 here)。
具体来说,我无法找到一种方法来汇集输出的各个方面,包括使用 Mice 的 GLM 函数 'log likelihood ratio' 的等价物。
为了避免之前 post 的冗余,我正在寻求任何关于 R 包或其他软件的建议,这些建议可能 easy/possible 汇集二元逻辑回归输出的所有基本组成部分(即相当于模型似然比检验、回归系数、wald 检验)。请参见下面的示例,该示例是我能够在非估算数据上使用 rms 获得的(无法找到一种方法 运行 在乘法估算数据上使用此方法)
> mylogit
Frequencies of Missing Values Due to Each Variable
P1 ST P8
18 0 31
Logistic Regression Model
lrm(formula = P1 ~ ST + P8 + ST * P8, data = PS, x = TRUE,
y = TRUE)
Model Likelihood Discrimination Rank Discrim.
Ratio Test Indexes Indexes
Obs 362 LR chi2 18.34 R2 0.077 C 0.652
0 287 d.f. 9 g 0.664 Dxy 0.304
1 75 Pr(> chi2) 0.0314 gr 1.943 gamma 0.311
max |deriv| 8e-08 gp 0.099 tau-a 0.100 Brier 0.155
Coef S.E. Wald Z Pr(>|Z|)
Intercept -0.5509 0.3388 -1.63 0.1040
ST= 2 -0.5688 0.4568 -1.25 0.2131
ST= 3 -0.7654 0.4310 -1.78 0.0757
ST= 4 -0.7995 0.5229 -1.53 0.1263
ST= 5 -1.2813 0.4276 -3.00 0.0027
P8 0.2162 0.4189 0.52 0.6058
ST= 2 * P8 -0.1527 0.5128 -0.30 0.7659
ST= 3 * P8 -0.0461 0.5130 -0.09 0.9285
ST= 4 * P8 -0.5031 0.5635 -0.89 0.3719
ST= 5 * P8 0.3661 0.4734 0.77 0.4393
总而言之,我的问题是:1) package/software 能够处理乘法估算数据以完成传统的二元逻辑回归分析,尤其是交互项 2) 我需要采取的可能步骤运行那个程序中的分析
rms package 具有使用 fit.mult.impute()
函数组合乘法插补数据的强大功能。这是一个小的工作示例:
dat <- mtcars
## introduce NAs
dat[sample(rownames(dat), 10), "cyl"] <- NA
im <- aregImpute(~ cyl + wt + mpg + am, data = dat)
fit.mult.impute(am ~ cyl + wt + mpg, xtrans = im, data = dat, fitter = lrm)