R软件包的版本号如1.97.1。我可以检查版本号是多少

 packageVersion("data.table")

在我的计算机上,这将返回1.10.0。

我想做的是检查data.table版本是否比1.9.7更新,因为1.9.7之后的版本具有我的代码需要的功能。我曾尝试将版本分为各个组成部分,并以不同的方式对其进行评估,但是我还没有找到任何可靠的方法来执行此操作。
任何建议,不胜感激。

最佳答案

虽然utils::compareVersion()很好,但我想说,将packageVersion()与比较运算符结合使用(如@ G5W在注释中所示)更简单:

packageVersion("data.table")
[1] ‘1.10.0’
> packageVersion("data.table")>"1.9.8"
[1] TRUE
> packageVersion("data.table")>"1.10.01"
[1] FALSE
> packageVersion("data.table")=="1.10.0"
[1] TRUE
?packageVersion的示例中对此进行了说明;以这种方式使用比较运算符的能力已在?package_version中明确记录:

关于r检查软件包版本是否大于x.y.z,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41495639/

10-12 19:53