请考虑以下内容:
使用survminer
包,我们可以为使用survival
包创建的生存对象绘制'log-log'图。软件包开发人员@kassambara here早已对此进行了介绍。
直到最近一切正常,但是在更新了R和RStudio的较新版本后,我收到警告消息和空白图表。
require("survival")
#> Loading required package: survival
require("survminer")
#> Loading required package: survminer
#> Loading required package: ggplot2
#> Loading required package: ggpubr
#> Loading required package: magrittr
fit<- survfit(Surv(time, status) ~ sex, data = lung)
ggsurvplot(fit, data = lung, fun = "cloglog")
#> Warning: Transformation introduced infinite values in continuous x-axis
#> Warning: Transformation introduced infinite values in continuous x-axis
print(sessionInfo(), locale = FALSE)
#> R version 3.6.1 (2019-07-05)
#> Platform: x86_64-w64-mingw32/x64 (64-bit)
#> Running under: Windows 10 x64 (build 16299)
#>
#> Matrix products: default
#>
#> attached base packages:
#> [1] stats graphics grDevices utils datasets methods base
#>
#> other attached packages:
#> [1] survminer_0.4.6 ggpubr_0.2.3 magrittr_1.5 ggplot2_3.2.1
#> [5] survival_2.44-1.1
#>
#> loaded via a namespace (and not attached):
#> [1] Rcpp_1.0.1 pillar_1.4.2 compiler_3.6.1
#> [4] highr_0.8 tools_3.6.1 digest_0.6.20
#> [7] nlme_3.1-140 evaluate_0.14 tibble_2.1.3
#> [10] gtable_0.3.0 lattice_0.20-38 pkgconfig_2.0.2
#> [13] rlang_0.4.0 Matrix_1.2-17 yaml_2.2.0
#> [16] xfun_0.8 gridExtra_2.3 withr_2.1.2
#> [19] stringr_1.4.0 dplyr_0.8.3 knitr_1.23
#> [22] survMisc_0.5.5 generics_0.0.2 grid_3.6.1
#> [25] tidyselect_0.2.5 data.table_1.12.2 glue_1.3.1
#> [28] KMsurv_0.1-5 R6_2.4.0 km.ci_0.5-2
#> [31] rmarkdown_1.15 tidyr_0.8.3 purrr_0.3.2
#> [34] backports_1.1.4 scales_1.0.0 htmltools_0.3.6
#> [37] splines_3.6.1 assertthat_0.2.1 xtable_1.8-4
#> [40] colorspace_1.4-1 ggsignif_0.6.0 labeling_0.3
#> [43] stringi_1.4.3 lazyeval_0.2.2 munsell_0.5.0
#> [46] broom_0.5.2 crayon_1.3.4 zoo_1.8-6
由reprex package(v0.3.0)于2019-09-04创建
我的RStudio版本是1.2.1335
我已与软件包开发者here进行了标记,但他似乎无法重现相同的错误(请参见here)。
对我来说,该错误在Windows和Mac上均会发生。同时,我用update.packages(checkBuilt = TRUE, ask = FALSE)
更新了两个系统上的所有软件包,但没有成功。奇怪的是,我的一个与较旧版本的R和RStudio一起工作的同事可以像程序包开发人员一样很好地画图。
我在做什么错,我该怎么办?
谢谢!
更新
回滚R和程序包的多个版本,我发现有效的版本(R和程序包)的一种组合。我不完全了解这是怎么回事,但是似乎一个或多个软件包与R版本的交互作用不佳。我在此处附上工作组合的会话信息,然后将其留给策划者进行进一步的探讨(如果有兴趣的话)。
require("survival")
#> Loading required package: survival
require("survminer")
#> Loading required package: survminer
#> Warning: package 'survminer' was built under R version 3.5.3
#> Loading required package: ggplot2
#> Warning: package 'ggplot2' was built under R version 3.5.3
#> Loading required package: ggpubr
#> Warning: package 'ggpubr' was built under R version 3.5.3
#> Loading required package: magrittr
fit<- survfit(Surv(time, status) ~ sex, data = lung)
ggsurvplot(fit, data = lung, fun = "cloglog")
print(sessionInfo(), locale = FALSE)
#> R version 3.5.1 (2018-07-02)
#> Platform: x86_64-apple-darwin15.6.0 (64-bit)
#> Running under: macOS 10.14.6
#>
#> Matrix products: default
#> BLAS: /Library/Frameworks/R.framework/Versions/3.5/Resources/lib/libRblas.0.dylib
#> LAPACK: /Library/Frameworks/R.framework/Versions/3.5/Resources/lib/libRlapack.dylib
#>
#> attached base packages:
#> [1] stats graphics grDevices utils datasets methods base
#>
#> other attached packages:
#> [1] survminer_0.4.2 ggpubr_0.2.3 magrittr_1.5 ggplot2_3.1.1
#> [5] survival_2.42-3
#>
#> loaded via a namespace (and not attached):
#> [1] Rcpp_1.0.2 compiler_3.5.1 pillar_1.4.2
#> [4] plyr_1.8.4 highr_0.8 tools_3.5.1
#> [7] digest_0.6.20 nlme_3.1-137 evaluate_0.14
#> [10] tibble_2.1.3 gtable_0.3.0 lattice_0.20-35
#> [13] pkgconfig_2.0.2 rlang_0.4.0 Matrix_1.2-14
#> [16] cmprsk_2.2-7.1 yaml_2.2.0 xfun_0.9
#> [19] gridExtra_2.3 withr_2.1.2 stringr_1.4.0
#> [22] dplyr_0.8.3 knitr_1.24 survMisc_0.5.5
#> [25] generics_0.0.2 grid_3.5.1 tidyselect_0.2.5
#> [28] data.table_1.12.2 glue_1.3.1 KMsurv_0.1-5
#> [31] R6_2.4.0 km.ci_0.5-2 rmarkdown_1.15
#> [34] tidyr_0.8.3 purrr_0.3.2 backports_1.1.4
#> [37] scales_1.0.0 htmltools_0.3.6 splines_3.5.1
#> [40] assertthat_0.2.1 xtable_1.8-4 colorspace_1.4-1
#> [43] ggsignif_0.6.0 labeling_0.3 stringi_1.4.3
#> [46] lazyeval_0.2.2 munsell_0.5.0 broom_0.5.2
#> [49] crayon_1.3.4 zoo_1.8-6
由reprex package(v0.3.0)于2019-09-05创建
可能的解决方法
@Robbe的答案是可能的解决方法!我犹豫是否将其标记为正确答案。任何对此的建议也将受到欢迎。
答案 0 :(得分:2)
我遇到了与您相同的错误,但是您可以通过设置xlim在x轴上省略0来使其起作用:
fit <- survfit(Surv(time, status) ~ sex, data = lung)
ggsurvplot(fit, data = lung, fun = "cloglog", xlim = c(1, 1000))
这是因为x轴是对数变换的,而log(0)是负无穷大,这会导致错误。
ggsurvplot似乎不会自动执行此操作,而例如plot可以:
fit<- survfit(Surv(time, status) ~ sex, data = lung)
plot(fit, data = lung, fun = "cloglog")
带有警告消息:
1: In xy.coords(x, y, xlabel, ylabel, log) :
1 x value <= 0 omitted from logarithmic plot
答案 1 :(得分:0)
这是我认为应该完成的事情:
t1: 1
t2: 1
撰写电子邮件并发送:
#identify the proper destination for the issue
maintainer("survminer")
[1] "Alboukadel Kassambara <alboukadel.kassambara@gmail.com>"
我确实发送了。