如何用NHANES数据做中介分析?求适配逻辑回归与权重的R包
加权NHANES数据下Logistic回归中介分析的R包推荐
survey+boot组合
这是适配复杂抽样权重的灵活方案:- 用
survey包构建包含NHANES权重、分层、聚类信息的抽样设计对象,再分别拟合三个核心模型:- 总效应模型(自变量→二分类因变量):
svyglm(y ~ x, design = svydesign_obj, family = binomial()) - 自变量→中介变量模型(中介为分类时用
binomial(),连续则用gaussian()):svyglm(m ~ x, design = svydesign_obj, family = ...) - 直接效应模型(自变量+中介→因变量):
svyglm(y ~ x + m, design = svydesign_obj, family = binomial())
- 总效应模型(自变量→二分类因变量):
- 借助
boot包对加权模型进行自助抽样,计算中介效应的置信区间,以此适配复杂抽样的方差估计,避免结果偏误。
- 用
miceadds包
该包专门支持复杂抽样数据的结构方程建模,能直接处理logistic回归类型的中介分析,无需手动拆分模型:library(miceadds) # 基于survey包的设计对象生成适配矩阵 des_mat <- miceadds::design_matrix(your_svy_design) # 定义中介模型语法(y为二分类因变量,m根据类型调整family) sem_syntax <- ' y ~ x + m m ~ x ' # 拟合加权中介模型 fit <- miceadds::sem.mi(sem_syntax, data = nhanes_data, design = des_mat, family = list(y = "binomial", m = "gaussian"))
内容的提问来源于stack exchange,提问作者you lin
相关产品推荐
相关产品推荐

