无法在 Ubuntu 18.04 LTS 上安装 rstanarm

Not able to install rstanarm on Ubuntu 18.04 LTS

我无法在 Ubuntu 18.04 LTS R 3.5.3 运行 上安装 rstanarm。我使用了以下命令:

install.packages("rstanarm")

devtools::install_github("stan-dev/rstanarm", build_vignettes = FALSE)

并且都抛出以下错误:

Execution halted
Makevars:17: recipe for target 'stan_files/lm.cc' failed
make: *** [stan_files/lm.cc] Error 1
ERROR: compilation failed for package ‘rstanarm’

sessionInfo

sessionInfo()
R version 3.5.3 (2019-03-11)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 18.04.2 LTS

Matrix products: default
BLAS: /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.7.1
LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.7.1

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  methods   base     

other attached packages:
[1] usethis_1.5.0  devtools_2.0.1

loaded via a namespace (and not attached):
 [1] Rcpp_1.0.1        ps_1.3.0          prettyunits_1.0.2 rprojroot_1.3-2  
 [5] digest_0.6.18     crayon_1.3.4      withr_2.1.2       assertthat_0.2.1 
 [9] R6_2.4.0          backports_1.1.3   magrittr_1.5      rlang_0.3.4      
[13] cli_1.1.0         curl_3.3          fs_1.2.7          remotes_2.0.2    
[17] testthat_2.0.1    callr_3.2.0       desc_1.2.0        tools_3.5.3      
[21] glue_1.3.1        pkgload_1.0.2     compiler_3.5.3    processx_3.3.0   
[25] pkgbuild_1.0.3    sessioninfo_1.1.1 tcltk_3.5.3       memoise_1.1.0    
> 

在 Ubuntu 18.04 + R 3.5.3 上,您可以通过以下方式安装 rstanarm

sudo add-apt-repository -y "ppa:marutter/rrutter"
sudo add-apt-repository -y "ppa:marutter/c2d4u3.5"
sudo apt update
sudo apt install r-cran-rstanarm

有关您之前可能遇到问题的原因的一些背景信息:

Ubuntu 的 RStan 安装指南对于那些使用 R 3 的人来说已经过时了。5.x。

Ben Goodrich linked in the comments to the RStan GitHub Guide to Installing RStan on Linux。他们在那里为 Ubuntu 建议以下内容:

# Add marutter's c2d4u repository, (and rrutter for CRAN builds too)
sudo add-apt-repository -y "ppa:marutter/rrutter"
sudo add-apt-repository -y "ppa:marutter/c2d4u"
sudo apt-get update
sudo apt-get install r-cran-rstan

但是,对于较新版本的 R,您需要改为执行以下操作

# Add marutter's c2d4u repository, (and rrutter for CRAN builds too)
sudo add-apt-repository -y "ppa:marutter/rrutter"
sudo add-apt-repository -y "ppa:marutter/c2d4u3.5"
sudo apt-get update
sudo apt-get install r-cran-rstan

这应该可以在 Ubuntu 18.04 + R 3.5.3 上为您安装 RStan。

第一次出现此错误时,假设您的 R 根目录中有一个 .RProfile,您很可能会找到一行内容:setwd("~/R"),继续并评论这一行并重新启动R并获得一个新会话,然后再次运行:install.packages("rstanarm")你应该能够成功安装rstanarm,不要忘记取消注释setwd("~/R") 安装后,出现此错误的原因是 rstanarm 安装脚本假定工作目录是包目录的根目录,而在 .Rprofile 中调用 setwd() 时并非如此 如果您想尝试一下..请删除您使用 PPA

安装的 rstanarm