我计划在同一个程序包中执行所有R脚本,以便在朋友之间轻松移动。
我所做的是使用R studio创建一个R包,并自动生成以下文件:
projectName.Rproj
DESCRIPTION
man
NAMESPACE
R
Read-and-delete-me
我创建了一个新的R脚本,并将其保存在R
文件夹中。现在我想添加一个新的R脚本,它使用在第一个脚本中定义的函数。
我创建了这个新脚本,并尝试使用位于另一个脚本中的函数。我得到错误,该函数未定义。
我在新脚本的开头使用了source
命令,如下所示:
source('something.R')
我收到something.R
不存在的错误消息。
请问有什么解决方案可以包含存在于不同脚本中的函数**但是在相同的包中**?
非常感谢
答案 0 :(得分:3)
您似乎误解了包的工作原理:通过在R/
目录中包含一个带有函数的文件,已经可以看到包中的其他代码。
如果要将其提供给其他软件包,可以通过NAMESPACE
文件对其进行控制。所有这些都在Writing R Extensions中有详细记录,其中包含您的R副本,以及您可以阅读的大量其他书籍和教程。