Slide 1

Slide 1 text

rstd.io/rp CAN MAKE A R IN 20 MINUTES! CAN MAKE A R IN 20 MINUTES! Jim Hester

Slide 2

Slide 2 text

rstd.io/rp WHY WRITE R ? WHY WRITE R ? R users already know how to use / install packages Easy to distribute But… Can be just for you No need to develop personal conventions Standardized conventions -> standardized tools It does not have to go on CRAN / Bioconductor

Slide 3

Slide 3 text

rstd.io/rp WHO CAN WRITE A PACKAGE? WHO CAN WRITE A PACKAGE? Can you open and run R / RStudio? Can you install a package? Can you write R code? Can you write an R function? Can you learn to write an R function? You can write a package in R Susan Johnston @SuseJohnston

Slide 4

Slide 4 text

rstd.io/rp FOR DEVELOPMENT FOR DEVELOPMENT R packages Writing R Extensions rOpenSci Onboarding POSTS POSTS Writing an R package from scratch - Hilary Parker (@hspter) How to develop good R packages - Maëlle Salmon (@ma_salmon) Making your first R package - Fong Chun Chan (@fongchunchan)

Slide 5

Slide 5 text

rstd.io/rp FOR DEVELOPMENT FOR DEVELOPMENT / / DEVTOOLS DEVTOOLS ROXYGEN2 ROXYGEN2 load_all() / install() test() / check() document() release() / rhub_check() USETHIS USETHIS create_package() use_test() / use_r() use_git() / use_github() use_travis() / use_coverage()

Slide 6

Slide 6 text

rstd.io/rp R COMPONENTS R COMPONENTS Package metadata (DESCRIPTION) Code (R/) Testing (tests/) Namespaces (NAMESPACE) Object documentation (man/) Vignettes (vignettes/) Data (data/) Compiled code (src/) Installed files (inst/)

Slide 7

Slide 7 text

rstd.io/rp DEMO DEMO

Slide 8

Slide 8 text

load_all() test() document() check() create_package() use test() devtools usethis - PACKAGES - PACKAGES - GENERAL - GENERAL R packages Writing R Extensions rOpenSci Onboarding R for Data Science Advanced R