我对R很新,我一直在脚本文件中定义一些自己的函数。我打算让其他人以后重新使用它们,我找不到任何关于R函数注释约定的指南。我有什么方法可以让help("my_function_name")
显示一些帮助吗?如果没有,我是否只是在脚本文件中记录该功能,以便有人打印出(或打开源代码)脚本以查看注释?
谢谢,
Hamy
答案 0 :(得分:21)
记录您的功能并让其他人可以访问的规范方法是制作一个包。为了使您的包能够通过构建检查,您必须为每个功能/数据集提供足够详细的帮助文件。
查看http://cran.r-project.org/doc/manuals/R-exts.html#Creating-R-packages
Rob J Hyndman撰写的这篇博文非常有用,也是我最容易关注的内容之一:http://robjhyndman.com/researchtips/building-r-packages-for-windows/
我开始使用roxygen协助制作&最近编译包:http://roxygen.org/
当你有疑问时,有很多好的资源和帮助的人!
答案 1 :(得分:15)
您可以查看的另一个(和更低的键)替代方法是comment()
和attr()
函数,以便为您的函数添加一些元数据。这是一个快速而愚蠢的例子:
FOO <- function(x,y) {
x + y
}
attr(FOO, "comment") <- "FOO performs simple addition"
#This can be arbitrary. "comment" is special. see ?comment for details.
attr(FOO, "help") <- "FOO expects two numbers, and it will add them together"
然后,您可以使用FOO
:
attributes()
相关联的所有内容
> attributes(FOO)
$source
[1] "function(x,y) {" " x + y " "}"
$comment
[1] "FOO performs simple addition"
$help
[1] "FOO expects two numbers, and it will add them together"
或提取特定部分:
> attr(FOO, "help")
[1] "FOO expects two numbers, and it will add them together"
attr(FOO, "comment")
[1] "FOO performs simple addition"
如果是评论,请使用comment()
:
> comment(FOO)
[1] "FOO performs simple addition"
从长远来看,编写自己的软件包几乎肯定值得花费开销和时间,但如果由于某种原因在短期内不切实际 - 这是另一种选择。
答案 2 :(得分:7)
您必须将函数放入包中(这使得移植功能非常简单)。我刚刚写了一篇关于它的short post链接(我希望它们仍然可以工作)到一些扩展这个主题的相关文档。
您可以使用roxygen,inlinedocs“动态”生成帮助文件。