Introduction to Package Building Aime Gott and Nic Crane Data - - PowerPoint PPT Presentation

introduction to package building
SMART_READER_LITE
LIVE PREVIEW

Introduction to Package Building Aime Gott and Nic Crane Data - - PowerPoint PPT Presentation

DataCamp Developing R Packages DEVELOPING R PACKAGES Introduction to Package Building Aime Gott and Nic Crane Data Science Consultants, Mango Solutions DataCamp Developing R Packages DataCamp Developing R Packages The Structure of an R


slide-1
SLIDE 1

DataCamp Developing R Packages

Introduction to Package Building

DEVELOPING R PACKAGES

Aimée Gott and Nic Crane

Data Science Consultants, Mango Solutions

slide-2
SLIDE 2

DataCamp Developing R Packages

slide-3
SLIDE 3

DataCamp Developing R Packages

The Structure of an R Package

An R package can include: Functions Data Documentation Vignettes Tests

slide-4
SLIDE 4

DataCamp Developing R Packages

Mandatory Components

As a minimum your package must include: R directory man directory NAMESPACE file DESCRIPTION file

slide-5
SLIDE 5

DataCamp Developing R Packages

Packages for easily creating packages!

devtools roxygen2

slide-6
SLIDE 6

DataCamp Developing R Packages

Setting Up an R Package

Core devtools functions:

create() document() check() build() test()

slide-7
SLIDE 7

DataCamp Developing R Packages

create()

Note: Avoid names already taken on .

library(devtools) create("simutils")

CRAN

slide-8
SLIDE 8

DataCamp Developing R Packages

Let's practice!

DEVELOPING R PACKAGES

slide-9
SLIDE 9

DataCamp Developing R Packages

Description and Namespace files

DEVELOPING R PACKAGES

Aimée Gott

Education Practice Lead, Mango Solutions

slide-10
SLIDE 10

DataCamp Developing R Packages

DESCRIPTION file

General package information Author and maintainer details Package dependencies License

slide-11
SLIDE 11

DataCamp Developing R Packages

Example DESCRIPTION file

slide-12
SLIDE 12

DataCamp Developing R Packages

Example DESCRIPTION file

slide-13
SLIDE 13

DataCamp Developing R Packages

Example DESCRIPTION file

slide-14
SLIDE 14

DataCamp Developing R Packages

Example DESCRIPTION file

slide-15
SLIDE 15

DataCamp Developing R Packages

NAMESPACE file

The NAMESPACE file controls: Functions or packages imported for use by our package Functions exported by our package We do NOT edit by hand!

slide-16
SLIDE 16

DataCamp Developing R Packages

Example NAMESPACE file

slide-17
SLIDE 17

DataCamp Developing R Packages

Let's practice!

DEVELOPING R PACKAGES

slide-18
SLIDE 18

DataCamp Developing R Packages

Optional Directories

DEVELOPING R PACKAGES

Nic Crane

Data Science Consultant, Mango Solutions

slide-19
SLIDE 19

DataCamp Developing R Packages

Optional Directories

We can also include: Data Vignettes Tests Compiled code Translations Demos

slide-20
SLIDE 20

DataCamp Developing R Packages

Data

sim_dat <- data.frame( ID = 1:10, Value = sample(1:11, 10), Apples = sample(c(TRUE, FALSE), 10, replace = TRUE) ) use_data(sim_dat, pkg = "simutils")

slide-21
SLIDE 21

DataCamp Developing R Packages

Vignettes

use_vignette("my_first_vignette", pkg = "simutils")

slide-22
SLIDE 22

DataCamp Developing R Packages

Best Practice for Structuring Code

Guidelines for the R directory: No subdirectories Don't have everything in one script Don't have a large number of small files Group similar functions together

slide-23
SLIDE 23

DataCamp Developing R Packages

Let's practice!

DEVELOPING R PACKAGES