Creating and Using R Packages: 3 Practical Examples

Learn how to create and use R packages through practical examples that simplify your coding experience.
By Taylor

Introduction to Creating and Using R Packages

Creating and using R packages is a fantastic way to organize your R code and share it with others. An R package is essentially a collection of functions, data, and documentation bundled together, making it easy to reuse code and collaborate with others. In this article, we’ll explore three practical examples of creating and using R packages, so you can unlock the full potential of your R programming skills.


Example 1: Building Your First R Package

Context

If you have a set of functions that you frequently use for data analysis, packaging them can save you time and make your code cleaner. This example will walk you through creating a simple R package that includes a custom function to calculate the mean of a numeric vector.

Start by setting up your package structure:

# Install the necessary package to create an R package
install.packages("devtools")

# Load the devtools package
library(devtools)

# Create a new package called 'MyStats'
create("MyStats")

Next, you’ll create a function and save it in the package:

# Create a new R script in the R directory of your package
file.edit("MyStats/R/mean_custom.R")

# In the script, write the following function:
mean_custom <- function(x) {
  if (!is.numeric(x)) {
    stop("Input must be numeric")
  }
  return(mean(x))
}

Now, document your function:

# Use Roxygen2 to document your function
# Add these comments above your function in the same mean_custom.R file:
#' Custom Mean Function
#'
#' @param x A numeric vector
#' @return The mean of the vector
#' @examples
#' mean_custom(c(1, 2, 3, 4, 5))
#' @export

Finally, build and install your package:

# Document and install the package
document("MyStats")
install("MyStats")

Now, you can use your new package in any R script:

library(MyStats)
mean_custom(c(10, 20, 30))  # This will return 20

Notes

  • You can add more functions to your package by creating additional R scripts in the R directory.
  • Be sure to document each function for easier use later on.

Example 2: Using an Existing R Package

Context

Instead of creating your own package from scratch, you might want to use an existing R package. This example will show you how to use the popular ggplot2 package for data visualization in R.

Start by installing the package if you haven’t already:

install.packages("ggplot2")

Load the package into your R session:

library(ggplot2)

Now, let’s create a simple scatter plot using the built-in mtcars dataset:

# Create a scatter plot of mpg vs. wt
ggplot(mtcars, aes(x = wt, y = mpg)) +
  geom_point() +
  labs(title = "Scatter Plot of MPG vs Weight", x = "Weight (1000 lbs)", y = "Miles per Gallon")

This command generates a scatter plot that visually represents the relationship between the weight of cars (wt) and their miles per gallon (mpg).

Notes

  • ggplot2 is highly customizable; you can adjust colors, themes, and more.
  • Explore the extensive documentation available for ggplot2 to unlock its full potential.

Example 3: Sharing Your R Package on GitHub

Context

Once you have created your R package, you might want to share it with others or collaborate on its development. This example demonstrates how to share your package on GitHub.

First, create a new repository on GitHub for your package. Then, you can push your local package to GitHub:

# Navigate to your package directory in the terminal
cd MyStats

# Initialize git and add the files
git init
git add .

# Commit your changes
git commit -m "Initial commit of MyStats package"

# Link to your GitHub repository
git remote add origin https://github.com/yourusername/MyStats.git

# Push your package to GitHub
git push -u origin master

Now, anyone can access your package on GitHub! They can install it directly from your repository using the devtools package:

# Install the package from GitHub
install_github("yourusername/MyStats")

Notes

  • Always include a README file in your GitHub repository to explain the purpose and usage of your package.
  • Consider adding examples and a license to make your package more user-friendly.

By following these examples of creating and using R packages, you can streamline your coding process, share your work with others, and enhance your R programming skills. Happy coding!