R coxph() Error: object 'Ccoxmart' not found

R coxph() Error: object 'Ccoxmart' not found

每次我 运行 使用 R 中的生存包的 Cox 模型时,我都会收到以下错误。这个错误是最近几天出现的。为了说明错误,我使用了 https://stat.ethz.ch/R-manual/R-devel/library/survival/html/coxph.html:

处给出的标准示例命令
# Fit a stratified model, clustered on patients 
library(survival)
bladder1 <- bladder[bladder$enum < 5, ] 
coxph(Surv(stop, event) ~ (rx + size + number) * strata(enum) + 
      cluster(id), bladder1)

我得到的错误如下:

Error in fitter(X, Y, strats, offset, init, control, weights = weights,  : 
  object 'Ccoxmart' not found

我正在使用最新版本的 R [3.4.0 (2017-04-21) -- "You Stupid Darkness"]。

我尝试查阅 R 的生存包手册并在互联网上进行了研究。感谢您推荐任何资源或解决方案。

我可以确认这个错误。这绝对与 R 3.3.3 (Another Canoe) -> R 3.4.0 (You Stupid Darkness) 的更新有关。我系统中的所有单元测试都在周五正常工作,周一就坏了。

此外,我还遇到 "Ccoxph_wtest" 找不到的问题。一定是类似的问题。

今天晚些时候我会开始调试并让你知道我发现了什么,但现在如果你必须重新开始 运行,我建议恢复到 R v3.3.3(另一个独木舟).我已经使用 v3.3.3 重新运行了所有单元测试,一切正常。

这是sessionInfo():

R version 3.3.3 (2017-03-06)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 16.04.2 LTS

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
 [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C            
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] stats     graphics  grDevices utils     datasets  base  


R version 3.4.0 (2017-04-21)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 16.04.2 LTS

Matrix products: default
BLAS: /usr/lib/atlas-base/atlas/libblas.so.3.0
LAPACK: /usr/lib/atlas-base/atlas/liblapack.so.3.0

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
 [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C            
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] stats     graphics  grDevices utils     datasets  base     

loaded via a namespace (and not attached):
[1] compiler_3.4.0

我的解决办法是重新安装生存包。只需将其安装在原件的顶部即可。 install.packages("survival").

您必须在 R 3.4.0 中重新安装使用 C 或 Fortran 的软件包:

update.packages(checkBuild=TRUE)

看到这个post

Packages which register native routines for .C or .Fortran need to be re-installed for this version (unless installed with R-devel SVN revision r72375 or later)