使用 logistf 对象绘制带有误差线的图

问题描述

我最初使用 glm 包做了一个逻辑模型,但想纠正分离,所以我使用了 logistf 函数,现在我正在尝试重做我的图。我不确定如何使用 logistf 对象制作如下图所示的图。很多包似乎不支持它,我尝试使用 sjPlot 包的 plot_model() 函数,该函数为预测概率绘制一个点,但不会像使用 glm 对象那样自动添加误差线。我怎样才能解决这个问题?也许有另一个包可以使这更容易,或者有没有办法手动添加误差线?

我希望添加误差线的绘图代码是:

sjPlot::plot_model(lr3,type="int",mdrt.values = "meansd",show.values = TRUE,value.offset = .3)

我的模型 lr3 的输出是:

logistf(formula = foodbank_cv ~ wave + ff_country + relevel(race_grp,ref = "White") + sex_cv + age_r + relevel(numchildren,ref = "None") + wave * ff_hcondhas + relevel(carer,ref = "Not") + sempderived + wave * cd_ff_furlough + 
    log(ff_hours) + qual + num + relevel(keyworksector,ref = "Not keyworker") + 
    ca_clinvuln_dv + freemeals + ca_blbenefits1 + log(hhincome_week),data = data,firth = TRUE,family = binomial(link = "logit"))

Model fitted by Penalized ML
Coefficients:
                                                                         coef   se(coef)  lower 0.95  upper 0.95        Chisq            p method
(Intercept)                                                      -5.237542354 0.46736532 -6.23016284 -4.30807241          Inf 0.000000e+00      2
wave5                                                            -0.377956413 0.32598420 -1.07410577  0.28545651 1.232122e+00 2.669947e-01      2
wave7                                                            -0.929934987 0.40813067 -1.84652632 -0.12926473 5.260388e+00 2.181615e-02      2
ff_country2                                                      -0.118780142 0.33317501 -0.86893024  0.51197342 1.196576e-01 7.294061e-01      2
ff_country3                                                       0.393456771 0.25097814 -0.15010616  0.88210537 2.077828e+00 1.494527e-01      2
ff_country4                                                      -0.219066153 0.43493435 -1.23008781  0.57774984 2.481153e-01 6.184053e-01      2
relevel(race_grp,ref = "White")Asian or Asian British            0.882833792 0.22906054  0.39628625  1.33641305 1.183859e+01 5.801581e-04      2
relevel(race_grp,ref = "White")Black or Black British            1.759374627 0.27942672  1.16321835  2.29702048 2.678592e+01 2.272869e-07      2
relevel(race_grp,ref = "White")Mixed                             1.786978145 0.27773294  1.19285979  2.32350705 2.763841e+01 1.462461e-07      2
relevel(race_grp,ref = "White")Other                            -0.345106379 1.38712570 -5.19048868  1.62733736 6.509258e-02 7.986208e-01      2
ff_hcondhas                                                       0.691244774 0.26776923  0.14697164  1.25269746 6.228205e+00 1.257311e-02      2

Method: 1-Wald,2-Profile penalized log-likelihood,3-None

我用来制作饥饿和种族情节的代码。我进行了一些手动编辑以使其看起来更好,但这就是我理想中希望我的情节的样子:

plot_model(model12,type = "pred",terms = c("race_grp"),axis.textsize = .3,wrap.labels = 5)+ theme_sjplot2() + scale_color_sjplot("simply") + ggplot2::labs(title= "Predicted probabilities of Hunger",x= "Race",y="Percentage")

enter image description here

enter image description here

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)