作者:黄天元,复旦大学博士在读,热爱数据科学与开源工具(R),致力于利用数据科学迅速积累行业经验优势和科学知识发现,涉猎内容包括但不限于信息计量、机器学习、数据可视化、应用统计建模、知识图谱等,著有《R语言数据高效处理指南》(《R语言数据高效处理指南》(黄天元)【摘要 书评 试读】- 京东图书,《R语言数据高效处理指南》(黄天元)【简介_书评_在线阅读】 - 当当图书)。知乎专栏:R语言数据挖掘。邮箱:huang.tian-yuan@qq.com.欢迎合作交流。
0、基础了解:https://r-mageddon.netlify.com/post/writing-an-r-package-from-scratch/
1、环境变量要加R和Rtools,具体形式如:C:\Rtools\mingw_64\bin; C:\R-3.6.1\x64。
2、使用的局部变量(函数中定义的瞬时变量)和语法糖(如“:=”)也要用全局变量函数GlobalVariables加以定义。比如“globalVariables(c(":=","!!",".",".SD"))”。
3、在使用其他包的时候,不允许导入不同包中的同名函数。多使用importFrom指定导入函数的名称,如果一定要用,那么使用importFrom随便导入两个包的不同名称的函数,然后在实际使用中使用命名空间调用(“::”)
4、环境变量TEMP中不允许出现中文
5、函数运行时间有限制,如果某函数要跑时间特别长,想过CRAN的测试,使用not run,然后把examples部分注释掉(“#”)。
6、所谓上传Github,把所有文件直接拖进去即可。
7、devtools包的submit_cran函数可以直接提交CRAN
8、可以使用export导出其他包的一些函数,比如“%>%”可以用:
#' @importFrom magrittr `%>%`
#' @export
magrittr::`%>%`9、use_logo函数可以接受一个图片的路径,作为包的图标。图标制作方法见:
10、use_vignette可以制定rmarkdown来写使用指南
11、pkgdown可以帮助制作主页,再加README.md即可。在Github中的Setting处能够进行设置,详见:https://help.github.com/en/github/working-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site#publishing-your-github-pages-site-from-a-docs-folder-on-your-master-branch
12、不要放弃,一步一步来,一定能做出来。Github和Stackoverflow是你的好朋友。
原文作者:;如有侵权,请联系管理员删除。