干货 | MIT手把手教你一步步创建自己的R程序包

简介: R语言对于数据科学家的重要性不言而喻,但配置R程序包的过程往往让一些菜鸟学习者望而却步,这篇文章将带着你跟着MIT的指导一步步的创建自己的R程序包。 *详细代码请参考文末原文地址喔! 首先打开一个新的R文件,确保你的默认目录是清楚的通过rm进行输入的(list=ls())。


image


R语言对于数据科学家的重要性不言而喻,但配置R程序包的过程往往让一些菜鸟学习者望而却步,这篇文章将带着你跟着MIT的指导一步步的创建自己的R程序包。

1.首先打开一个新的R文件,确保你的默认目录是清楚的通过rm进行输入的(list=ls())。查看Is(),确保它是空的(你应该能够清楚的看见(0))。

2.在R文件中可以为你的程序编写代码。你可以创建一个包含所有函数的文件,或者是为每个函数都创建单独的文件。将文件保存到你能快速找到的地方。

3.安装‘devtools’ 安装包,(代码:install.packages(‘devtools’))

4.在RStudio.中打开一个新的项目,在“文件”菜单中的点击“新项目”,然后选择“新目录(New DIrectory)”并选择“R包(R Package)”创建一个新的R包。

5.命名你的安装包,然后上传。在第一步源文件创建包的基础上,创建R文件,点击“创建项目”。


image

6.在屏幕的右下角,你会看到一个文件目录,“R”文件中包含了函数的代码。“man”文件中将包含了文件中函数的所有帮助文件。根据Rstudio的版本,当你在创建R安装包或者R文档时,帮助文件会自动生成。如果“man”文件夹中已经包含.Rd文件,打开每个文件,添加一个标题然后保存.(如果不是,请见步骤7)。你可以返回并在稍后编辑这些内容。但是为了编译你的安装包,你需要在每个.Rd的文件下添加一个标题。

7.如果你的“man”文件夹是空的,那么你需要为每个函数手动创建一个.Rd文件。方法是:打开文件菜单—创建新的文件—选择R文件。输入函数的标题并在Rd template的菜单下选择函数。编辑你的新文件要包含标题域(再次强调,你可以选择现在编辑或者是稍后编辑,如果标题域是空的,那么你的安装包将无法编译)。保存“man”文件夹中的每一个.Rd文件。
注意:如果你需要在你的安装包里添加更多的函数,那么你需要重复以上步骤。即使是在你一开始创建安装包和RStudio自动生成R记录文件的时候。

8.现在你已经可以开始编译你的安装包了。在顶部工具栏里选择创建或者“创建和重载”(注意:你可以用快捷键Ctrl+Shift+B)。如果以上操作有效,你的安装包将会自动加载并且你会在底部的控制台上看到一个库(你的新安装包)。测试你的函数确保其有效运行。

9.返回并为每个函数编辑其记录文件(帮助文件)。打开每一个.Rd文件,为安装包添加一段简短的描述。如果可以的话,至少包含一个实例。接着,重载你的安装包,在R控制台上彻底检验你的文件。注意:每次改变你的函数和文件时,你都会需要重新编译(重复步骤8)。

10.一旦你完成创建你的函数和记录文件时,编译你的安装包,并反复检查函数和帮助文件是否能运行,把包含安装包的完整文件复制到Dropbox (共享网盘程序)并用你的名字命名。

原文链接:https://www.r-bloggers.com/mit-step-by-step-instructions-for-creating-your-own-r-package/

原文发布时间为:2017-09-13
原作者:Data Scientist PakinJa
编译:笪洁琼,张天健,云州
本文来自云栖社区合作伙伴“大数据文摘”,了解相关信息可以关注“大数据文摘”微信公众号

相关文章
|
9月前
|
人工智能 Linux API
OpenClaw(Clawdbot)一键部署接入 WhatsApp 保姆级教程
OpenClaw作为一款曾用名Clawdbot、Moltbot的开源本地优先AI代理平台,凭借本地运行保障数据隐私、多平台联动交互等优势,成为不少用户处理自动化任务的优选工具。它能接入WhatsApp等多种通信渠道,让用户通过聊天界面就能指挥其完成文件整理、信息查询等各类任务。而借助阿里云服务器的一键部署功能,能大幅降低部署门槛,即便无深厚技术基础的用户,也可快速完成部署并接入WhatsApp。以下是详细的操作步骤,涵盖前期准备、部署实施、WhatsApp接入及后续验证与问题排查,全程步骤清晰且易于操作。
3537 3
|
网络安全 Windows
解决adb报错“failed to create fdevent interrupt socketpair: Invalid argument“问题
解决adb报错“failed to create fdevent interrupt socketpair: Invalid argument“问题
1005 0
解决adb报错“failed to create fdevent interrupt socketpair: Invalid argument“问题
|
算法 Java
Seqtk、Seqkit两个处理fa/fq神器的学习记录
Seqtk、Seqkit两个处理fa/fq神器的学习记录
2922 0
|
存储 NoSQL 安全
「数据库深度探索」图型数据库JanusGraph支持知识图谱和图型分析
「数据库深度探索」图型数据库JanusGraph支持知识图谱和图型分析
|
9天前
|
Linux 开发工具 iOS开发
Codex保姆级教程(下载+安装+登录+使用,含所有版本,2026最新)
Codex是OpenAI推出的开源AI编程智能体,本地运行,可理解整个代码库,支持自然语言指令改代码、执行命令、跑测试、修Bug,兼容Win/macOS/Linux。(239字)
3650 14
|
10天前
|
JavaScript API iOS开发
DeepSeek Harness下载、安装、配置一篇搞定(2026整理,送常用插件)
DeepSeek Harness(DSH)是DeepSeek于2026年开源的MIT协议AI Agent框架,支持插件化组装模型、工具、沙箱与UI,兼容主流大模型。本文提供免Node.js的桌面端安装包(Win/macOS),含详细图文教程及热门插件推荐。
3966 43
|
10天前
|
iOS开发 Docker MacOS
【2026实测】Docker Desktop下载、安装、汉化、配置教程(附官网安装包)
Docker Desktop 是 Docker 官方推出的桌面容器管理工具,集成引擎、CLI、图形界面与 Kubernetes,支持 Win/macOS/Linux。2026 最新版 4.88.1 强化 ARM 原生运行、镜像加速及资源可视化,附中文汉化与国内镜像配置指南。
1822 6
|
5天前
|
云安全 人工智能 安全
|
5天前
|
存储 弹性计算 人工智能
2026 年阿里云双十一活动入口攻略,新客服务器优惠通道、三大会场入口梳理
综合来看,2026年阿里云双十一活动入口清晰: 阿里云轻量应用服务器、阿里云ECS云服务器、阿里云GPU云服务器、阿里云百炼大模型服务平台 活动会场、综合权益中心、99计划专场三大入口覆盖服务器、AI权益与续费特价;新用户通过控制台首页banner、权益中心、产品页三处路径进入专属专场,老用户通过控制台弹窗和费用中心权益中心进入老客专区,企业用户做企业实名后解锁专属满减与阶梯折扣。
635 0