1、创建项目工作目录

mkdir /home/sesa464509/R/demo
cd /home/sesa464509/R/demo
vi sayHello.R
------------------

sayHello<-function(name) {

print(paste("Hello",name))
  }

------------------

2、用package.skelelon()函数,生成sayHello项目的骨架

R
> rm(list=ls())
> setwd("/home/sesa464509/R/demo")
> package.skeleton(name="sayHello",code_files="/home/sesa464509/R/demo/sayHello.R")
> q()
$ cd /home/sesa464509/R/demo
$ ls -l
$ ls sayHello
$ vi sayHello/DESCRIPTION #定义了整个项目的配置信息
--------------------------

Package: sayHello      #项目名(包名)
  Type: Package          #项目类型
  Title: R package demo for sayHello    #项目标题
  Version: 1.0           #项目版本号
  Date: 2017-07-25       #项目创建日期
  Author: Fei Meng       #项目作者
  Maintainer: Fei Meng <fly.mengfei@gmail.com>      #主要贡献者
  Description: This package provides a package demo    #项目详细描述
  License: GPL-3         #项目的发布协议

--------------------------

$ vi sayHello/NAMESPACE

-------------------------

 export(sayHello)

-------------------------

$ vi sayHello/man/sayHello.Rd

-------------------------

\name{sayHello}
  \alias{sayHello}
  \title{a sayHello function demo}
  \description{
  a sayHello function demo
  }
  \usage{
  sayHello(name)
  }
  \arguments{
  \item{name}{a word}
  }
  \details{
  nothing
  }
  \value{
  no return
  }
  \references{
  nothing
  }
  \author{
  Fei Meng
  }
  \note{
  nothing
  }
  \seealso{
  nothing
  }
  \examples{
  function (name)
  {
  print(paste("Hello", name))
  }
  }
  \keyword{ sayHello }

-------------------------

$ rm sayHello/Read-and-delete-me       #删除可忽略的文件,否则check过程会出现警告

$ rm sayHello/man/sayHello-package.Rd

$ R CMD build sayHello          #执行打包命令

~/R/demo$ R CMD INSTALL sayHello_1.0.tar.gz      #需要在demo目录里安装sayHello包

~/R/demo$ cd

~$ ls /home/sesa464509/R/x86_64-pc-linux-gnu-library/3.3     #查看R的安装目录,找到sayHello

demo/sayHello/下文件及目录解释:

DESCRIPTION文件:项目描述文件,用于设置项目的全局的配置

NAMESPACE文件:项目命名空间,用于设置项目输入输出函数

Read-and-delete-me文件:说明文件,可以删除

man目录:存放函数的帮助文件

R目录:存放源代码文件的目录

man/sayHello.Rd:sayHello函数的帮助文件,LaTex语法,用来生成PDF文档

man/sayHello-package.Rd:sayHello包的帮助文件,可以删除

3、检查R包,发布到CRAN上

先安装LaTex

sudo apt-get install texlive-full
#安装LaTex
R CMD check sayHello_1.0.tar.gz
#执行check检查

卸载R包

$ R CMD REMOVE sayHello
#命令行卸载R包
> remove.packages("sayHello")
#函数卸载R包

4、Rstudio中开发R包

File -> New project -> New directory -> R package

编辑文件跟在linux一样

点击Rstudio的Build -> Build&Reload

然后点击check

创建Rdemo项目的更多相关文章

  1. 创建maven项目(cmd 命令)

    2016五月 22 原 创建maven项目(cmd 命令) 分类:maven (994) (0) 1.普通方式创建 1)进入cmd窗口执行 mvn archetype:generate 2) 光标停止 ...

  2. (八)Eclipse创建Maven项目运行mvn命令

    1.Eclipse创建Maven项目 使用Eclipse创建一个Maven项目非常的简单,选择菜单项File>New>Other(也可以在项目结构空白处右击鼠标键),在弹出的对话框中选择M ...

  3. Jenkins创建Maven项目及SSH部署

    前面我们已经安装了Jenkins的环境,以及配置好了jdk和maven.下面我们来看如何通过Jenkins将svn的项目进行打包和部署. 创建MAVEN项目 1.点击新建,输入项目名,选择" ...

  4. 终端指令操作创建Django项目

    需求:通过Django创建一个用户表和权限表. 用户表包括:用户名,邮箱,密码,管理权限. 权限表包括:普通用户,管理用户,超级用户. 权限表和用户表有一对多的关系,即用户表中的每条数据对应权限表中的 ...

  5. VS自定义项目模板:[2]创建VSIX项目模板扩展

    VS自定义项目模板:[2]创建VSIX项目模板扩展 听语音 | 浏览:1237 | 更新:2015-01-02 09:21 | 标签:软件开发 1 2 3 4 5 6 7 分步阅读 一键约师傅 百度师 ...

  6. 用Kotlin开发Android应用(II):创建新项目

    这是关于Kotlin的第二篇.各位高手发现问题,请继续“拍砖”. 原文标题:Kotlin for Android(II): Create a new project 原文链接:http://anton ...

  7. Java开发环境的搭建以及使用eclipse从头一步步创建java项目

    一.java 开发环境的搭建 这里主要说的是在windows 环境下怎么配置环境. 1.首先安装JDK java的sdk简称JDK ,去其官方网站下载最近的JDK即可..http://www.orac ...

  8. Eclipse+Maven创建webapp项目<一>(转)

    还在为jar下载而烦恼吗?还在为jar依赖关系而烦恼吗?还在为jar冲突而烦恼吗?强大的maven项目管理工具来拯救你们呢?自动下载jar,自动下载jar依赖包.你什么都不用做,只需要在中央仓库中co ...

  9. Eclipse+maven创建webapp项目<二>(转)

    原文地址:http://www.cnblogs.com/candle806/p/3439469.html 1.开启eclipse,右键new-->other,如下图找到maven project ...

随机推荐

  1. wrk(1)- 详细使用

    介绍 wrk 是一个类似 ab(apache bench).jmeter 的压力测试工具,官方称它为:现代的 HTTP 基准测试工具 用 C 编写的 HTTP 协议压测工具 底层基于 epoll 和 ...

  2. 深入 Go 中各个高性能 JSON 解析库

    转载请声明出处哦~,本篇文章发布于luozhiyun的博客:https://www.luozhiyun.com/archives/535 其实本来我是没打算去看 JSON 库的性能问题的,但是最近我对 ...

  3. Java基础知识之this关键字知识讲解

    this关键字这里对java中this关键字的基础知识进行讲解,希望对热爱java的小伙伴有帮助!! /* this关键字代表了所属函数的调用者对象. this关键字的作用: 1. 如果存在同名成员变 ...

  4. [Azure DevOps] 使用 Inno Setup 制作桌面软件安装包

    1. 桌面应用程序的 CI/CD 桌面应用程序的 CI/CD 过程和网站有一些不同,毕竟桌面应用程序的"部署"只是将安装包分发到目标位置,连应用商店都不用上,根据公司的管理流程可以 ...

  5. ES6中的字符串

    字符串在编程语言中,一直是使用率很高的数据,虽说函数在js语言中是一等公民,但是字符串,怎么也能算得上是千年老二,下面我就一起和大家探讨一下在es6中的一些新用法和特性,特别是在字符串拼接的时候,会解 ...

  6. 『言善信』Fiddler工具 — 15、使用Fiddler抓取HTTPS请求

    目录 1.Fiddler抓取HTTPS过程 2.拓展:SSL/TLS证书握手原理 3.Fiddler抓取HTTPS原理总结 4.Fiddler抓取HTTPS设置 步骤1:配置证书 步骤2:勾选设置 5 ...

  7. 9种设计模式在Spring中的运用,一定要非常熟练

    1.简单工厂(非23种设计模式中的一种) 实现方式: BeanFactory.Spring中的BeanFactory就是简单工厂模式的体现,根据传入一个唯一的标识来获得Bean对象,但是否是在传入参数 ...

  8. UNREFERENCED_PARAMETER的用处

    UNREFERENCED_PARAMETER的用处 作用:告诉编译器,已经使用了该变量,不必检测警告! 在VC编译器下,如果您用最高级别进行编译,编译器就会很苛刻地指出您的非常细小的警告.当你生命了一 ...

  9. Linux中测试网络命令

    ping IP -t 是持续性查看网络状态

  10. Centos7 unzip文件名中文乱码

    Centos7 unzip文件名中文乱码 前言 今天在批量处理windos文件时为了方便操作,将windos下面的文件夹打成zip包上传至centos7中解压处理,发现解压后中文文件名变成了乱码,如下 ...