生成发布包_制作R包指南
最近在写毕业论文,我想把自己的R代码整理一下然后上传,用来“假装”自己确实做了一些东西,因此将R包的制作过程记录一下,分享给大家~也为自己以后参考留下一些资料~
之前在黄志洪老师的课上他曾布置过R包的额外作业,当时我和另外两个同学一起做了一个比较简单的贪吃蛇游戏R包,叫做Sokoban。但是当时R包打包工作时另一个同学工作的,因此这也是我第一次尝试打包工作!
注意一下我是在Windows下进行操作的,不同的平台可能会有不同。废话不多说,现在开始!
前期准备:
- 预备打入包中的函数;
- 版本为2.14.0以上的R;
- 合适版本的工具软件Rtools,下载链接,根据提示选择版本就可以;
- Latex编辑工具,在Rtools的下载页面中有Mitex的下载页面,我因为之前已经装了就跳过这一步;
- 设置环境变量
E:aaastudylatexmiktexmimiktexbinx64;E:aaastudyRRtoolsbin;E:aaastudyRR-3.5.0binx64
打包R包:
- 清空内存中所有对象,创建Rpackage文件夹,将Rscript放到文件夹下,并设置对应的工作目录,并读入需要打包的所有函数:
rm(list=ls())
setwd("E:/aaastudy/Rpackage")
source("****.R")
- 生成R程序包的框架,***为包名,将现在内存中的所有函数进行打包,创建出一个R包的框架:
package.skeleton(name="***",list = ls())
- 上述文件夹包含DESCRIPTION, NAMESPACE, Read-and-delete-me(需要删除)三个文件及man文件夹,需要编辑的有DESCRIPTION文档和man中MyFunction.rd(自己创建的函数)说明文档以及***.Rd(R包)说明文档。
- 描述全都改完后,将cmd切换到编写R包的目录并进行打包并进行检查,***_1.0.tar.gz是打包后得到的压缩包,也就是最后要向R Cran提交的文件。
rcmd build ***
rcmd check ***._1.0.tar.gz --as-cran
- 在检查的过程中可能会遇见一些报错,我把我遇到的情况记录如下:
- *Font ts1-zi4r at 540 not found Font ts1-zi4r at 540 not found
- *checking should be performed on sources prepared by 'R CMD build':rcmd后的对象应该是生成的压缩包
- * checking for unstated dependencies in examples ... NOTE
>> Warning: parse error in file ‘***-Ex.R’:这种时候一般是有字符或者代码的错误,你找到Rcheck文件夹里面的***-Ex.R文件,找到对应的行就可以查错了。 - R包的Title格式会有要求,check的时候按照要求改就好啦。
上传R包
- 首先在检查的过程中不能有任何ERROR!NOTE和WRANING要尽可能少。
- 最好将包现在本地进行测试。
rcmd INSTALL ***._1.0.tar.gz
- 将没有任何错误的包***.tar.gz上传到 The Comprehensive R Archive Network 根据提示填写信息即可,之后会自动发送一封确认邮件,确认就好了。
- 然后就是等啦,可以在R project中进行查看。
结语:
我编写的这个包并没有其他代码,如果用到了其它代码,可以参考在CRAN上发布自己的R包,另外,这种方法构建的R包是不能含中文字符的,但我在看官方的书Writing R Extensions 的时候看到了非英文字符的包的创建,有兴趣的可以自己看看。
参考文章:
炼数成金:如何制作自己的R包?
在CRAN上发布自己的R包
AI 技术讲座精选:如何创建 R 包并将其发布在 CRAN / GitHub 上?
Writing R Extensions
生成发布包_制作R包指南相关推荐
- vue 生成发布包_年轻人如何从0到1封装发布一个vue组件__Vue.js
封装发布组件是前端开发中非常重要的能力,通过对常用组件的封装可以提升团队开发的效率,避免重复劳作且不方便维护.好的组件的抽象和封装能让组件得到更广泛和多环境兼容的应用. 本文讲述了如何一步步从0到1封 ...
- python 发布包_如何将自己的Python包发布到PyPI
以前写过一篇类似的文章: 如何打包自己的项目并且发布到pypi上,不过由于PyPI进行了一些更新,因此旧方法不大适用了.趁端午有时间,想把haipproxy的客户端发布到PyPI,以改进用户体验,因此 ...
- 包r语言_R语言代码共享:制作R包
作者:黄天元,复旦大学博士在读,热爱数据科学与开源工具(R),致力于利用数据科学迅速积累行业经验优势和科学知识发现,涉猎内容包括但不限于信息计量.机器学习.数据可视化.应用统计建模.知识图谱等,著有& ...
- r语言查找是否存在空值_关于R包安装你知道多少?
在R语言的学习过程中离不了各种R包的安装与使用,要使用某个R包首先得学会如何安装该R包.对于R包的安装你知道的有多少?你知道如何指定安装路径吗?为何你每次重新打开R绘画都需要重新安装R包?今天小编带你 ...
- vue 生成发布包_Vue 3.0 终于正正正正正式发布了!
Vue 团队于 2020 年 9 月 18 日晚 11 点半发布了 Vue 3.0 版本,我们连夜对 Release 进行了翻译.由于时间仓促,文中如有翻译不当的地方还望提出.如有侵权,请联系删帖.以 ...
- 进阶必看 | R包制作指南-windows系统
R包制作指南 准备工作 开始创建R包 在Rstudio内完成R包构建 先前与大家分享过如何安装和使用R包,也与大家分享过自定义函数,这些都是R包的基础.一般来说,会将写好的函数进行封装,打包起来 ...
- 如何制作自己的R包?
摘自 方匡南 等编著<R数据分析-方法与案例详解>.电子工业出版社 R包简介 R包提供了一个加载所需代码.数据和文件的集合.R软件自身就包含大约30种不同功能的包,这些基本包提供了R软件的 ...
- R语言 image.binarization: 包_想提高文章的引用率?写个R包吧!- 工具准备篇
前言 R语言程序包是R语言的灵魂,是R语言的核心,每一个R语言用户都会使用到R包.2006年3月15日,第一个R包(coxrobust)加入CRAN,截止2020年5月17日,已经有超过15000个R ...
- RStudio制作包含Rcpp代码的R包
前面博客中有提及,当我们进行模拟想要再次进行提速时,通常都会使用Rcpp将我们的R代码改成C++代码.具体Rcpp的使用可参考博客:让你的R代码更快--Rcpp入门,利用RcppEigen进行矩阵运算 ...
- Shiny平台构建与R包开发
Introduction 在数据库网页搭建教程中已经提到,数据分析决策平台的搭建十分重要.数据库网页是数据分析决策平台的重要表现形式之一,能够很好地将大量数据或其分析结果公开展示,并能提供数据下载.统 ...
最新文章
- android切图尺寸_安卓设计尺寸规范
- [MySQL Reference Manual] 7 备份和恢复
- 控制台:Unable to import maven project: See logs for details日志:Unable to create injector, see the follow
- Js跨域解决方法总结
- 家庭洗车APP --- Androidclient开展 之 网络框架包介绍(一)
- oracle ntile函数,Oracle分析函数ntile
- excel html 颜色,excel怎么设置鼠标横竖颜色
- Oracle 12C Sharding部署和测试
- 可以查看计算机主要自启动项的技术,电脑中怎么查看启动项
- 诗词创作[3] 问春
- MacOS上ESP8266开发板刷microPython教程
- golang实现单点登录
- 制作html版圣诞礼物,10个圣诞礼物制作灵感 创意圣诞卡片手工制作
- 浅论各种调试接口(SWD、JTAG、Jlink、Ulink、STlink)的区别
- 通过伴随矩阵怎么求逆矩阵
- Codeforces Round #710 (Div. 3) ABCDE 题解
- 测试开发之Python核心笔记(15):迭代器与生成器
- React学习笔记二:实现一个数字时钟
- 频谱聚类|拉普拉斯矩阵
- 科卡在线linux,典型建网方案之家庭内部网设计
热门文章
- 响应式十日谈第一日:使用 rem 设置文字大小
- TurboMail邮件系统促进马可波罗瓷砖集团迅猛发展
- [30期] 第一个项目总结-—数码黑店在这一年开张
- 书籍-从Paxos到Zookeeper分布式一致性原理与实践
- 自动化测试报告 html模板,自动化测试报告模板.docx
- linux禁用scp命令,Linux系统如何关闭scp和sftp命令
- @value 默认值_【Spring】只想用一篇文章记录@Value的使用,不想再找其它了(附思维导图)
- 北大计算机QS排名,2019最新QS世界大学排名:清华北大获历史最高名次
- PHP根据配置的规则,计算用户的等级
- 2021-03-23梦笔记