我正在一台存储容量非常小的机器上安装基于 Docker 文件的软件包。我的问题是,是否有任何方法可以安装更轻量级版本的 R 包,从而避免包中部署代码(例如文档)的非关键部分。有办法做到这一点吗install.packages?否则,还有其他办法吗?

1

  • 2
    这有点奇怪,因为库的大小通常与要处理的数据文件的大小相形见绌R


    – 


2 个回答
2

您可以手动指定您想要安装的内容,例如:
R CMD INSTALL [options] <package-name>或者与install.packages("package-name", INSTALL_opts = c("--option1", "--option2"))您的情况相关的选项可能如下:

      --no-docs     do not install HTML, LaTeX or examples help
      --no-html     do not build HTML help
      --no-R, --no-libs, --no-data, --no-help, --no-demo, --no-exec,
      --no-inst
            suppress installation of the specified part of the
            package for testing or other special purposes
      --libs-only   only install the libs directory
      --data-compress=  none, gzip (default), bzip2 or xz compression
            to be used for lazy-loading of data
      --resave-data re-save data files as compactly as possible
      --compact-docs    re-compress PDF files under inst/doc

0

或者,您可以使用描述的包install2.r作为一种简单的方法,以确保在发生错误时退出构建或选择是否还想包含依赖项。littler

关于轻量级安装,对应Mat D.的建议,您可以将littlerdocopt包与install2.r.除了提供的选项之外,您还可以包含
R CMD INSTALL参数。该过程描述

设置库位置 (libloc) 后,您可以使用 来docopt指定所需的安装详细信息。

例如,install2.r -n 4 ggplot2 --no-html将允许使用 4 个进程并行安装,并且ggplot2无需 HTML 帮助即可安装。您可以为每个所需的包指定单独的安装过程,而NA默认设置为依赖项。