如何安装R的开发工具并数字化?

如何安装R的开发工具并数字化?

我需要开发工具因为我需要这个功能安装_github安装非 CRAN 软件包数字化 这里。我安装的R

sudo apt-get install r-cran-robustbase

我没有立即安装 R 的软件包,正如 terdon 的答案所建议的那样,但我可以更正权限:

sudo chmod 755 /usr/lib/R/site-library/

我认为这是默认设置。然后我必须按照 rcs 的答案建议,成功安装devtoolstpoisot/digitize但只能使用

sudo apt-get install libssl-dev
sudo apt-get install libcurl4-openssl-dev
R
install.packages('httr')
install.packages('git2r')
install.packages('devtools')
library(devtools)
install.packages('readbitmap')
install_github('tpoisot/digitize')

最后一个命令的输出可以是

Skipping install for github remote, the SHA1 (d16e28b9) has not changed since last install.
  Use `force = TRUE` to force installation

这样做install_github('tpoisot/digitize', force = TRUE),但你可能会得到

...
'/usr/lib/R/bin/R' --no-site-file --no-environ --no-save --no-restore --quiet  \
  CMD INSTALL '/tmp/RtmpX8eOLX/devtools57475d25a113/tpoisot-digitize-d16e28b'  \
  --library='/usr/local/lib/R/site-library' --install-tests 

Error: ERROR: no permission to install to directory ‘/usr/local/lib/R/site-library’
Error: Command failed (1)

我找不到没有sudo.这样做sudo R,然后重复同样的事情,你就会得到

...
'/usr/lib/R/bin/R' --no-site-file --no-environ --no-save --no-restore --quiet  \
  CMD INSTALL '/tmp/RtmpAlAT4e/devtools57e864e8c490/tpoisot-digitize-d16e28b'  \
  --library='/usr/local/lib/R/site-library' --install-tests 

* installing *source* package ‘digitize’ ...
** R
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded
* DONE (digitize)

添加masi到现有组即可在不使用in 的staff情况下工作;在全新安装中您也需要它sudoR

sudo usermod -a -G staff masi

安装测试

  1. 我按照导游的指示这里。我R$HOME/Pictures/没有开始sudo并使用他们的测试图像这里

  2. 用鼠标选择轴上的四个点cal = digitize::ReadAndCal('Rintro-snail1.jpg')

在此输入图像描述

  1. 手动执行data.points = digitize::DigitData(col = 'red')并选择作为您的数据点的点

在此输入图像描述

  1. 我通过第二次单击关闭“绘图”窗口。

  2. df = digitize::Calibrate(data.points, cal, 0.1, 0.4, 0.0, 0.6)和看df

           x  y
    1  71.50 NA
    2  65.65 NA
    ...
    24 26.80 NA
    

    正在做head(df)

          x  y
    1 71.50 NA
    2 65.65 NA
    3 64.60 NA
    4 60.85 NA
    5 59.05 NA
    6 58.15 NA
    

安装细节

  • 里面R和外面sudo

    > .Library
    [1] "/usr/lib/R/library"
    > > .libPaths()
    [1] "/usr/local/lib/R/site-library" "/usr/lib/R/site-library"      
    [3] "/usr/lib/R/library"  
    
  • 其中命令ls /usr/lib/R/library/没有列出devtools。为什么?

    base       compiler   grid        methods   rpart    survival
    boot       datasets   KernSmooth  mgcv      spatial  tcltk
    class      foreign    lattice     nlme      splines  tools
    cluster    graphics   MASS        nnet      stats    translations
    codetools  grDevices  Matrix      parallel  stats4   utils
    
  • 命令ls -la /usr/local/lib/R/

    total 12
    drwxrwsr-x 3 root staff 4096 touko 19 22:25 .
    drwxr-xr-x 5 root root  4096 touko 19 22:25 ..
    drwxrwsr-x 2 root staff 4096 touko 19 22:25 site-library
    
  • 命令ls -la /usr/local/lib/

    total 20
    drwxr-xr-x  5 root root  4096 touko 19 22:25 .
    drwxr-xr-x 14 root root  4096 touko 19 22:13 ..
    drwxrwsr-x  4 root staff 4096 huhti 21 01:13 python2.7
    drwxrwsr-x  3 root staff 4096 huhti 21 01:08 python3.5
    drwxrwsr-x  3 root staff 4096 touko 19 22:25 R
    
  • 命令R_LIBS_USER="/usr/local/lib/R/site-library/" R

     R version 3.2.3 (2015-12-10) -- "Wooden Christmas-Tree"
     Copyright (C) 2015 The R Foundation for Statistical Computing
     Platform: x86_64-pc-linux-gnu (64-bit)
     ...
    
  • library(devtools)被加载

差速工具

先前错误的原因

  • 没有干净的系统:从 14.04、15.10 等升级的系统。
  • 由于之前的事情而搞乱了权限/所有者。
  • 自己在这个过程中犯下的错误。
  • 发生故障时没有备份。
  • ...
  • 缺少文档

系统:全新安装的 Ubuntu 16.04 64 位
硬件:Dell PC 2013、Macbook Air 2013-mid、...

答案1

httr导入openssl系统需要的包libssl-dev( sudo apt install libssl-dev)

------------------------- ANTICONF ERROR ---------------------------
Configuration failed because openssl was not found. Try installing:
 * deb: libssl-dev (Debian, Ubuntu, etc)
...

curl软件包需要作为系统要求libcurl4-openssl-dev

------------------------- ANTICONF ERROR ---------------------------
Configuration failed because libcurl was not found. Try installing:
 * deb: libcurl4-openssl-dev (Debian, Ubuntu, etc)
...

因此,要安装,您需要运行:

sudo apt-get install libssl-dev
sudo apt-get install libcurl4-openssl-dev

然后使用 and 启动 R shell sudo R

install.packages('httr')
install.packages('git2r')
install.packages('devtools')
library(devtools)
install_github('tpoisot/digitize')

答案2

作为一般规则,您不只是更改系统目录的权限!这就是 root 访问的目的。将权限恢复到您找到它们的方式,并在下次sudo Rinstall.packages生成的根 R shell 中运行。

现在,您无法安装的原因就在您显示的输出中:

ERROR: dependencies ‘httr’, ‘git2r’ are not available for package ‘devtools’

显然,正如 rcs 所解释的,在Ubuntu上,您需要先安装libssl-devlibcurl4-openssl-dev


下一个问题是 root 用户的 R 安装/usr/local/lib/R/site-library作为输出中的第一个目录,.libPaths并且不在普通用户的路径中。由于它是 root 的第一个条目,因此这就是您的库的安装位置:

 Installing package into ‘/usr/local/lib/R/site-library’
(as ‘lib’ is unspecified)

因此,一个简单的解决方案是创建一个名为的文件~/.Rprofile并将此行添加到其中:

.libPaths("/usr/local/lib/R/site-library/")

另外,或者另外,你可以添加如下一行

   .libPaths("/home/masi/Rlibs")

这将允许您将来将库安装到目录中/home/masi/Rlibs (选择您想要的任何名称),从而避免需要sudo R.


或者,您可以将环境变量设置R_LIBS_USER/usr/local/lib/R/site-library/(或/home/masi/Rlibs安装库的其他位置)。只需将此行添加到您的~/.profile

R_LIBS_USER=/usr/local/lib/R/site-library/

相关内容