Project 3 Final Deliverable
The deliverable for this project is a fully developed R package, which contains functions to automate and streamline the data collection and analysis that you did in Units 1 and 2.
Along the way you will learn how to:
- structure an R package folder
- write automated unit tests for your functions
- design code that is fast and efficient
Final Deliverable
The package you create must have the following elements.
Structure
Package installs without errors or warnings using
remotes::install_github("your-repo/your-package-name")All functions are fully documented in the
roxygen2style.All functions have at least one associated unit test in the
testthatformat.
Function Design
Package includes underlying helper functions that support primary functions.
Functions perform efficiently on moderately large data
At least one function uses
data.table,arrow, and/or parallelization.
Content
Package must contain at least…
one data gathering function via API or webscraping
one data cleaning/wrangling function
two data summarizing functions
two plotting functions
one statistical analysis function
one vignette describing package use
Stat 541 requirements
Stat 541 packages must also…
contain at least one function that uses tidy eval
pass all CRAN checks
have at least 80% test coverage as measured by
covrinclude at least one speed and memory benchmarking test in a vignette
Peer Review
In Week 10 your group will give (and receive) feedback to another group on their preliminary package setup. Your goal is to test the user-friendliness of the functions and to find places where the functions break.
Submission
You are required to submit both the link to your GitHub repository for your package, which should be fully installable from the link, and a .zip folder of your package.