簡體   English   中英

`levels<-`(`*tmp*`, value = as.character(levels)) 中的錯誤:因子級別 [3] 重復

[英]Error in `levels<-`(`*tmp*`, value = as.character(levels)) : factor level [3] is duplicated

我正在嘗試使用自動繪圖 plot 刻面生存曲線,但協變量和刻面的組合會在因子內重復水平

library(survival)
library(ggfortify)
fit <- survfit( Surv(time, status) ~ inst + sex,
                 data = lung )

autoplot(fit, facets = TRUE)


Error in `levels<-`(`*tmp*`, value = as.character(levels)) : 
  factor level [3] is duplicated

有沒有人用自動繪圖成功地繪制了多面生存曲線? 我嘗試了 survminer,但 plot 看起來很可怕,協變量占據了 plot 區域的大部分。

我認為您應該再次查看ggsurvplot ,因為autoplot.survfit似乎不喜歡擁有多個自變量(無論您是否考慮)。

ggsurvplot function 返回一個 ggplot object,因此您無需滿足於默認選項。 您可以根據需要添加比例和樣式。 以您為例,我們可以這樣做:

library(survival)
library(ggfortify)
library(survminer)

fit <- survfit( Surv(time, status) ~ inst + sex,
                 data = lung )

p <- ggsurvplot(fit, facet.by = "inst", conf.int = TRUE) + 
  theme(strip.background = element_blank(),
        axis.line.x = element_line())

p$facet <- facet_wrap(.~inst, ncol = 3, nrow = 6, scales = "free")

p

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM