很抱歉问了简单的问题。我是 R 初学者。我试图加载一个库运行时,例如
x<-"snow"; library(eval(x))
结果:
Error in library(eval(x)) : 'package' must be of length 1.
如果有人给我一些解决方案,我将不胜感激。
很抱歉问了简单的问题。我是 R 初学者。我试图加载一个库运行时,例如
x<-"snow"; library(eval(x))
结果:
Error in library(eval(x)) : 'package' must be of length 1.
如果有人给我一些解决方案,我将不胜感激。
使用character.only=TRUE. 请参阅库的帮助页面,带有?library.
> library(x, character.only=TRUE)
我建议使用require而不是library.
require返回一个逻辑,指示包是否已成功加载,即您可以在类似的结构中使用它
if (require (x, character.only = TRUE))
...
相反,library如果包不可用,默认情况下会因错误而停止(logical.return = TRUE不过,您可以通过 更改此行为)。
如果包已经加载,并且这部分代码经常执行,速度可能很重要:如果包已经加载,速度require几乎比我的笔记本电脑快 20 倍。library如果没有,它会调用library.