R programming services
The Biostatistics Department provides R programming services to all faculty and students. This page summarizes those services, but special requests not listed here are welcomed. Email the Department's R programmer at firstname.lastname@example.org.
R package support
Depending on the size and scope of your project, we take already developed R code and turn it into a distributable R package. The Department's R programmer provides various package development services. Here is a loose guideline of what is needed to bridge the gab between R code and an R package:
- Send an R script with the functions to include in the package
- At least one example run of each function
- A test data set or simulation function
- I can help implement standard R functions, such as print, summary, print.summary, etc
- Depending on the size of project and available time, I occasionally write new code. The feasibility of this option is decided on a case-by-case basis.
- Document - for each function, I provide a Word template to fill in essential documentation. This includes short descriptions of the function parameters
- DOI’s are now required by CRAN, so we recommend obtaining one for the package
- Share - we ensure packages pass checks and release to CRAN/Github
The Department's R programmer provides various package maintenance services, including:
- Hosting on Github (and other repositories)
- Shiny app hosting on Shinyapps.io (provided by the department)
- Submission to CRAN repository (and other repositories) and maintenance
The Department maintains a catalog of all software developed by faculty and students regardless of programming language. Currently, over 130 packages are cataloged. Navigate to the software landing page under Computing.
To add a new package to the catalog, email email@example.com with the following:
- Department collaborators
- Links to website and code repository
- Short description
We host regular one-hour workshops throughout the semester, open to anyone:
- Using Git in RStudio - January 17
- Introduction to data analysis in R and RStudio - January 23 at 12:00 pm in SPH 1, room 2615
- Reproducible research reporting with RMarkdown - Spring 2020, date TBD
- Data manipulation with data bases using dbplyr - Spring 2020, date TBD
- Create R apps with Shiny - Spring 2020, date TBD
- Interactive data visualization with plotly - Spring 2020, date TBD
- R parallelization tools - Spring 2020, date TBD
- Intro. to writing R packages - Spring 2020, date TBD
- Workflowr - Spring 2020, date TBD
Resources for package development
For a textbook reference on R package development, we prefer R Packages: Organize, Test, Document, and Share Your Code by Hadley Wickham.
If you package requires highly optimized algorithms, there is a good text on Rcpp for interfacing with C++ called, Seamless R and C++ Integration with Rcpp (Use R!) 2013th Edition by Dirk Eddelbuettel.
We prefer to use StackOverflow as the preferred forum for general R questions.
Shiny app hosting
The Department has approximately 450 free hours for Shiny application hosting available to faculty and students. Shiny application hosting is a convenient way to distribute your Shiny apps to researches around the world.