微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用“ lavaan”包在中介分析中获得奇数比率

如何解决如何使用“ lavaan”包在中介分析中获得奇数比率

我正在尝试在R中进行中介分析,建议使用包'mediation'和'lavaan'。

似乎“调解”曾用于与一位调解人打交道,而“ lavaan”却被建议与多个调解员打交道。而且当结果变量是二分法时,我很困惑如何获得奇数比率。

这是我的代码,请注意,Y(new_DM)和X(高血压,BMI,CB,TG)均一分为二,年龄和性别均定义为协变量。

library(lavaan)
model <- '
# outcome model 
new_DM ~ c*hypertension + b1*BMI + b2*CB + b3*TG + age + sex

# mediator models
BMI ~ a1*hypertension + age + sex
CB ~ a2*hypertension + age + sex
TG ~ a3*hypertension + age + sex

# indirect effects (IDE)
BMIIDE := a1*b1
CBIDE  := a2*b2
TGIDE  := a3*b3
sumIDE := (a1*b1) + (a2*b2) + (a3*b3)

# total effect
total := c + (a1*b1) + (a2*b2) + (a3*b3)
BMI ~~ CB 
CB ~~ TG
BMI ~~ TG
'
set.seed(1234)
fit <- sem(model,data=data,test="bootstrap",bootstrap=1000)
summary(fit,fit.measures=TRUE,standardize=TRUE,rsquare=TRUE)
boot.fit <- parameterEstimates(fit,boot.ci.type="bca.simple")

然后我得到

····
Regressions:
                   Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
  new_DM ~                                                              
    hypertnsn  (c)    0.038    0.008    4.849    0.000    0.038    0.059
    BMI       (b1)    0.028    0.010    2.890    0.004    0.028    0.044
    CB        (b2)    0.040    0.010    4.027    0.000    0.040    0.062
    TG        (b3)    0.030    0.009    3.383    0.001    0.030    0.040
    age               0.002    0.000    4.093    0.000    0.002    0.050
    sex              -0.005    0.007   -0.666    0.505   -0.005   -0.008
  BMI ~                                                                 
    hypertnsn (a1)    0.206    0.012   17.857    0.000    0.206    0.206
    age              -0.009    0.001  -15.651    0.000   -0.009   -0.181
    sex               0.121    0.011   10.957    0.000    0.121    0.124
  CB ~                                                                  
    hypertnsn (a2)    0.208    0.011   18.394    0.000    0.208    0.210
    age              -0.002    0.001   -3.585    0.000   -0.002   -0.041
    sex               0.221    0.011   20.375    0.000    0.221    0.228
  TG ~                                                                  
    hypertnsn (a3)    0.101    0.010    9.793    0.000    0.101    0.117
    age              -0.003    0.001   -6.336    0.000   -0.003   -0.076
    sex               0.050    0.010    5.074    0.000    0.050    0.059

Covariances:
                   Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
 .BMI ~~                                                                
   .CB                0.130    0.003   44.048    0.000    0.130    0.604
 .CB ~~                                                                 
   .TG                0.033    0.002   14.580    0.000    0.033    0.174
 .BMI ~~                                                                
   .TG                0.033    0.002   14.405    0.000    0.033    0.172

Variances:
                   Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
   .new_DM            0.093    0.002   60.216    0.000    0.093    0.978
   .BMI               0.218    0.004   60.216    0.000    0.218    0.920
   .CB                0.211    0.004   60.216    0.000    0.211    0.902
   .TG                0.174    0.003   60.216    0.000    0.174    0.980

R-Square:
                   Estimate
    new_DM            0.022
    BMI               0.080
    CB                0.098
    TG                0.020

Defined Parameters:
                   Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
    BMIIDE            0.006    0.002    2.853    0.004    0.006    0.009
    CBIDE             0.008    0.002    3.934    0.000    0.008    0.013
    TGIDE             0.003    0.001    3.198    0.001    0.003    0.005
    sumIDE            0.017    0.002    8.349    0.000    0.017    0.027
    total             0.055    0.008    7.210    0.000    0.055    0.086

我的问题是,如何获得总效应,直接效应和间接效应的奇数比?我可以尝试exp(coef(fit))还是其他尝试?另一个问题是“ lavaan”是否能够处理纵向数据集,如何将时间变量添加到模型中并进一步计算危险比。

任何建议都值得赞赏。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。