在R中不是有效的已安装软件包

时间:2013-06-10 16:00:35

标签: r

我是R的初学者(2个星期),我遇到的问题应该很简单:创建一个包。

为了起床和跑步,我创造了一个简单的功能:

square <- function(number)
{
answer <- number * number
return(answer)
}

然后我将工作目录设置为安装了所有其他R软件包的位置

setwd("/usr/local/lib/R/site-library")

然后我创建一个包

package.skeleton(list = c("square"), name = "sbpackage01") 

所有文件在新的'sbpackage01'目录中按预期显示,但是当我打开RCommander并尝试使用

包时
library(sbpackage01)
它告诉我

'sbpackage01' is not a valid installed package

有关我缺少什么的任何建议?我见过的教程的下一步是压缩然后安装它,但是不是只通过'package.skeleton ...'来安装包吗?

感谢您的帮助!

1 个答案:

答案 0 :(得分:7)

  

应该简单的事情:创建一个包。

哈哈。好吧,不,在R中创建一个包不是很简单(与其他语言的模块系统相比)。您已走上正轨,但在使用软件包之前,您需要安装(或使用devtools动态安装和加载它)。

命令package.skeleton实际上在包目录中创建了一个文件Read-and-delete-me,其中包含有关如何执行此操作的简短说明。简而言之,您需要在命令行上从程序包目录的父目录运行以下命令:

R CMD build packagename
R CMD INSTALL packagename

这只是一个非常简短的解释。请务必阅读其中一个更详细的解释,例如Friedrich Leisch的{​​{3}} [PDF]。