R语言ggsurvplot绘制生存曲线报错 : object of type ‘symbol‘ is not subsettable

时间:2022-07-27
本文章向大家介绍R语言ggsurvplot绘制生存曲线报错 : object of type ‘symbol‘ is not subsettable,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

原文链接: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)的问题

2.在UBUNTU虚拟机上安装R软件包

3.WINDOWS中用命令行执行R语言命令