在RStudio中脱机安装软件包

时间:2014-03-09 06:34:53

标签: r rstudio

由于安全协议,我正在开发一个没有http || https连接的终端。我在另一台计算机上手动下载了一些软件包,并尝试使用RStudio安装它们。当我在RStudio中运行时

install.packages(//filedir/package_file.zip,repos=NULL,type="source")

它正试图连接到在线存储库:

>>warning in istall.packages:
>>unable to resolve 'www.stats.ox.ac.uk'

但是当我浏览RGui并使用utils:::menuInstallLocal()并使用弹出窗口时,它不会尝试连接服务器并安装我的本地文件。

我在RStudio做错了什么?

我还希望能够在安装时自动为父包安装依赖项和导入。

3 个答案:

答案 0 :(得分:6)

假设您的软件包采用zip存档格式本地存储在您的计算机上。

RStudio有一个简单的菜单选项

工具>安装包>在Install from option

中选择“Package Archive File”

浏览您需要安装的软件包文件。

安装后您可能希望加载库,例如,如果您已经安装了“tm”软件包,那么您可以运行命令

  

library(tm)#加载库“tm”

希望它有效:)

答案 1 :(得分:4)

不要使用参数type="source",因为您提供了一个zip文件的链接:

这应该有效

install.packages("yourlink.zip", repos=NULL)

答案 2 :(得分:0)

步骤1:-在PC上安装R base(64位)和R Studio。 步骤2:-在PC上插入Pendrive或保存脱机软件包文件夹的位置。 步骤3:-。在编辑模式(R脚本)下打开R studio。

getDependencies <- function(packs){
  dependencyNames <- unlist(
    tools::package_dependencies(packages = packs, db = available.packages(),
                                which = c("Depends", "Imports"),
                                recursive = TRUE))
  packageNames <- union(packs, dependencyNames)
  # Remove base dependencies, these are installed with R and not published on CRAN
  basePackages <- c("base","compiler","datasets","graphics","grDevices","grid",
                    "methods","parallel","splines","stats","stats4","tcltk","tools","utils")
  packageNames <- setdiff(packageNames, basePackages)

  packageNames
}


 packages <- getDependencies(c("tidyverse", "pacman"))
setwd("E:/offline package R installation")
pkgInfo <- download.packages(pkgs = packages, destdir = getwd(), type = "win.binary")
# Save just the package file names (basename() strips off the full paths leaving just the filename)
write.csv(file = "pkgFilenames.csv", basename(pkgInfo[, 2]), row.names = FALSE)

Step5:在Excel表格中将欲望包以及文件夹中的包打包后,将其存储在所需的位置。然后在其他任何计算机上打开R编辑器,然后执行以下代码

# Set working directory to the location of the package files
setwd("E:/offline package R installation")

# Read the package filenames and install
pkgFilenames <- read.csv("pkgFilenames.csv", stringsAsFactors = FALSE)[, 1]
install.packages(pkgFilenames, repos = NULL, type = "win.binary")

最后,您现在可以轻松地在没有任何互联网连接的任何计算机上使用脱机软件包及其离线状态