原文链接:http://tecdat.cn/?p=14683
预期
绘制生存曲线图
实际
object of type ‘symbol‘ is not subsettable
重现问题的步骤
library(survminer)
#> Le chargement a nécessité le package : ggplot2
#> Le chargement a nécessité le package : ggpubr
#> Warning: le package 'ggpubr' a été compilé avec la version R 3.4.3
#> Le chargement a nécessité le package : magrittr
require("survival")
#> Le chargement a nécessité le package : survival
survie <- Surv(time, status) ~ sex
fit<- survfit(survie, data = lung)
ggsurvplot(fit, data = lung)
#> Error: objet de type 'symbol' non indiçable
ggsurvplot()尝试从对象中捕获生存公式Surv(time, status) ~ sex,如下所示: fit$call$formula
。
通过分解R代码,执行fit $ call $ formula的结果是“ survie”而不是 Surv(time, status) ~ sex
。这将导致错误消息。
请拟合并可视化生存曲线,如下所示:
library(survival)
fit <- survfit(Surv(time, status) ~ sex, data = lung)
ggsurvplot(fit, data = lung)
如果您仍然想分解R代码,那么我建议使用surv_fit()
[survminer软件包中的] 函数 ,它是对R基本函数的扩展, survfit()
具有更多功能
您可以按以下方式使用它:
survie <- Surv(time, status) ~ sex
fit <- surv_fit(survie, data = lung)
ggsurvplot(fit, data = lung)
参考文献
1.如何解决线性混合模型中畸形拟合(SINGULAR FIT)的问题