我需要绘制的相对风险为Cox回归的二次效应。 我的模型看起来是这样的:
cox_mod <- coxph(Surv(time, status) ~
ph.karno + pat.karno + meal.cal + meal.cal_q,
data = lung)
凡meal.cal_q被定义为:
lung$meal.cal_q <- lung$meal.cal^2
该地块应考虑meal.cal和meal.cal_q系数,并显示在y轴的相对风险,在x轴的meal.cal值。 相对风险应该被定义为在给定值meal.cal的风险相比,所有预测在它们的意思。 Additionaly,情节应包括95%的置信区间。 该地块应该是这个样子: 预计阴谋
如果可能的话,剧情应该是ggplot对象,以便我可以自定义。
我一直在阅读了网络上的时间,但无法弄清楚如何使所描述的情节,希望有人能帮助我。 我试了一下,例如与预测()函数:
meal.cal_new <- seq(min(lung$meal.cal, na.rm= TRUE), max(lung$meal.cal, na.rm= TRUE), by= 1)
meal.cal_q_new <- meal.cal_new^2
n <- length(meal.cal_new)
lung_new <- data.frame(ph.karno= rep(mean(lung$ph.karno, na.rm= TRUE), n), pat.karno= rep(mean(lung$pat.karno, na.rm= TRUE), n), meal.cal= meal.cal_new, meal.cal_q = meal.cal_q_new)
predicted_rel_risk <- predict(cox_mod, lung_new, interval = "confidence")
print(predicted_rel_risk)
首先,预测值不包括95%的置信itnervals。 而另外还有在predicted_rel_risk负值这在我opinien不应该是这种情况,因为最小相对风险应该是零。 因此,我不能得到所希望的描绘。 所以,我所能做的是这样的:
lung_new$predicted_rel_risk <- predicted_rel_risk
ggplot(lung_new, aes(meal.cal, predicted_rel_risk)) +
geom_smooth(se= TRUE)
所得的情节不包括置信区间和显示neagtive相对风险。 以下是我得到:
谢谢很多提前!