如何运行使用旧版本包和最新 R 版本和包中的 R 编写的 R 脚本? [关闭]
Posted
技术标签:
【中文标题】如何运行使用旧版本包和最新 R 版本和包中的 R 编写的 R 脚本? [关闭]【英文标题】:How do you run a R script which was written using older version of packages and R in latest R version and packages? [closed] 【发布时间】:2021-07-10 03:15:13 【问题描述】:我有一个用于闪亮应用的 R 脚本。我不知道在编写该脚本时使用了哪些版本的包或 R。现在我必须运行该脚本。由于版本问题,它会导致很多错误。有什么捷径可以让我运行该脚本而不会出错?
【问题讨论】:
不。脚本文件不包含有关包版本的任何信息。如何前进实际上取决于您遇到的错误类型。 【参考方案1】:您可以尝试使用包 checkpoint 从脚本上次运行的日期开始安装包。如果您的软件包当时是最新版本,那么您将拥有一个可重现的环境。
# current repository
getOption("repos")
# CRAN
# "https://cran.rstudio.com/"
# attr(,"RStudio")
# [1] TRUE
# current library
.libPaths()
# [1] "/Library/Frameworks/R.framework/Versions/3.6/Resources/library"
# current package version
packageVersion("dplyr")
# [1] ‘1.0.5’
library(checkpoint)
# the script ran successfully on 2019-01-01
checkpoint("2019-01-01")
# Can I create directory ~/.checkpoint for internal checkpoint use?
# ...
将创建一个新库,其中填充自检查点日期以来的包。
getOption("repos")
# [1] "https://mran.microsoft.com/snapshot/2019-01-01"
.libPaths()
# [1] "/Users/csjcampbell/.checkpoint/2019-01-01/lib/x86_64-apple-darwin15.6.0/3.6.2"
# [2] "/Users/csjcampbell/.checkpoint/R-3.6.2"
# [3] "/Library/Frameworks/R.framework/Resources/library"
# packages are installed as versioned on the snapshot date
packageVersion("dplyr")
# [1] ‘0.7.8’
【讨论】:
以上是关于如何运行使用旧版本包和最新 R 版本和包中的 R 编写的 R 脚本? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章