虽然玩了一段时间的R,但很惭愧的是一直没有学着自己编写一个R包。一个是觉得R本身的包已经是浩如烟海了,另一个感觉好象写包非常麻烦。在参加完北京的这次统计夏令营后,看太云讲写包也不是太难。于是回来找了些资料尝试了一下,于是就形成了这篇笔记。
在WIN下面除了要安装好R之外,还要安装Rtools,这个在官网上可以找到。如果不写复杂的帮助文档和Vignette的话也不需要装MikTeX。此外在WIN中还要确保PATH的设置正确,这些可以在后面的参考文献中得到详细说明。在编写R包时还要知道自己的工作目录在哪,可以用getwd()函数来了解。
在上面准备工作都做好之后,可以开始在R中编写自定义函数了。例如在前面文章中提到的判断质数的函数。在包里面我们还可以内置一些数据。也一起读到内存中来。
如果你是个很重视细节的人,可以去补充完善DESCRIPTION文件和man目录下的rd文件。因为帮助文档如同代码中的注释一样重要。如果你不拘小节也应该将各个rd文档中的title补充好。这样才能继续往下走。有时候你也可以直接将别人的包拿过来修改一下,这也是省事的法子。
补充完整后,在命令行窗口中运行如下命令:
R CMD INSTALL --build mypkg
一切顺利的话就会在工作目录下看到mypkg.zip文件了。最后就可以用R来安装这个zip文件。使用这个包只要library(mypkg)就OK了。是不是很简单。
如果你要编写的R包只有几个简单的函数,就可以使用上面的传统方法来做。但如果有几十个函数要编写维护,那么写这些函数的帮助文档就非常让人头疼。此时你就需要用到忍者的写包方法了。
参考文档:
没有评论:
发表评论