有时候你写了一些函数,想把这些函数打包发布在网上,以便在随时随地都可以通过安装加载package来使用这些函数,这时选择创建一个R包十分理想。
创建一个R包的极简方法
-
首先安装并加载 devtools
library('devtools')
-
创建R包的文件所在目录
create('~/somebm') # 建立 R 包的目录, somebm 就是你想要的包的名称 setwd('~/somebm') # 把工作目录放到 R 包中的目录,开发 R 包过程中始终推荐这样做。 dir() # 列出当前工作目录的文件和文件夹
-
修改DESCRIPTION文件 DESCRIPTION文件是概要性地描述这个R包地基本信息,就是平时看到的R包说明文档的第一页的信息,主要包括包的主要用途,作者,版本号,licenses,依赖包等等。用sublime text打开文件夹下的DESCRIPTION文件,进行修改对应项的内容。
-
添加 *.R 文件 在R 文件夹下,存放所有的自创的 R 函数代码。
-
为函数添加注释文档
- R 包规定了每一个(对外)的函数、变量、数据结构,都要有对应的解释。在 man 文件夹中会有对应的 *.Rd 文件,最终会在使用时展示成平时使用R包函数调用help(some function)的页面内容。
- 这些内容越详细越好,幸运的是已经有现成的框架,我们可以用简洁的方式来写函数注释,就可以自动调用方法生成相应的 *.Rd 文件。
- 打开R 函数代码文件,将光标放在函数名称上,然后用
ctrl+shift+alt+R
建立帮助信息。输入每一项的内容。 - 输入完成后,再运行
document()
即可。会自动生成man 文件夹,其中包含了对应的的 *.Rd 文件。
-
打包package 运行
build()
,就会在包文件夹同一层级的文件夹中生成 Package_name_0.0.0.9000.tar.gz 类似的打包文件。在 R 中使用 install.packages(‘~/Package_name_0.0.0.9000.tar.gz’, type=’source’) 就可以安装本包了。 -
一个基础的R包创建完成。