R Tutorial: Optional directories
Key Takeaways
The video tutorial covers the basics of creating R packages, including optional directories such as data, vignettes, and unit tests, using functions like use_data and use_vignette from the devtools package.
Full Transcript
you now seen everything that you have to include but you might remember that we said there what other things that you could include like data and Phinehas there are many other components that you can include in our package the most common include data vignettes and unit tests others include compiled code such as C++ and even translations for messages in the past it was also common to include demo code although they have mostly been replaced by vignettes you will see more about tests later so we'll leave that for now but all of these can be easily incorporated into your packages with simple use functions let's start with an example of data there are a number of ways you can include data but as a simple example let's assume you want to include data for the end-user to work with data is stored in the data directory as an our data file you can call the use data function to create this our data file from an R object use data needs to know the name of the object and the location of the package if you want to create a vignette which can think of as a user guide you can use use veneer in a similar way this function will create a directory called vignettes and create a template vignette for you to edit with a name that you provide dev tools will create an R markdown template for you so if you're already familiar with our markdown there is little else you need to know dev tools will include a special header that you should leave as is that will ensure that our identifies your vignette you can write as many vignettes as you want using the use vignette function each time to create the template when you create in our package it must follow the standard structure you can't just create any directories you want or your package won't build so what does this mean for the code in our our directory there is in fact only a single rule around this you can't create subdirectories otherwise you can have as many or as few our files as you want generally you should avoid having everything in one script for a small package you might want to have one file per function with a file name reflecting the function name but as a package gets larger it's common to see similar functions grouped together personally I tend to end up somewhere in between with large functions in a file of their own and smaller utility functions drooped ever with other similar functions now it's your turn to try including some of these optional elements
Original Description
Want to learn more? Take the full course at https://learn.datacamp.com/courses/developing-r-packages at your own pace. More than a video, you'll learn hands-on coding & quickly apply skills to your daily work.
---
You have now seen everything that you have to include but you might remember that we said there were other things that you could include like data and vignettes.
There are many other components that you can include in an R package. The most common include data, vignettes and unit tests. Others include compiled code, such as C++, and even translations for messages. In the past, it was also common to include demo code, although they have mostly been replaced by vignettes.
You will see more about tests later so we will leave that for now. But all of these can be easily incorporated into your packages with simple "use" functions.
Let's start with an example of data.
There are a number of ways you can include data but as a simple example, let's assume you want to include data for the end user to work with.
Data is stored in the data directory as an RData file. You can call the use_data() function to create this RData file from an R object. use_data() needs to know the name of the object and the location of the package.
If you want to create a vignette - which you can think of as a user guide - you can run use_vignette() in a similar way.
This function will create a directory called "vignettes" and create a template vignette for you to edit, with the name that you provide.
devtools will create an R Markdown template for you so if you are already familiar with R Markdown there is little else you need to know. devtools will include a special header that you should leave as is that will ensure that R identifies your vignette.
You can write as many vignettes as you want, using the use_vignette() function each time to create the template.
When you create an R package, it must follow the standard structure - you can't just create any directories that you
Watch on YouTube ↗
(saves to browser)
Sign in to unlock AI tutor explanation · ⚡30
Playlist
Uploads from DataCamp · DataCamp · 0 of 60
← Previous
Next →
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
SQL Server Tutorial: Date manipulation
DataCamp
R Tutorial: Intermediate Interactive Data Visualization with plotly in R
DataCamp
R Tutorial: Adding aesthetics to represent a variable
DataCamp
R Tutorial: Moving Beyond Simple Interactivity
DataCamp
Python Tutorial: Why use ML for marketing? Strategies and use cases
DataCamp
Python Tutorial: Preparation for modeling
DataCamp
Python Tutorial: Machine Learning modeling steps
DataCamp
R Tutorial: The prior model
DataCamp
R Tutorial: Data & the likelihood
DataCamp
R Tutorial: The posterior model
DataCamp
R Tutorial: An Introduction to plotly
DataCamp
R Tutorial: Plotting a single variable
DataCamp
R Tutorial: Bivariate graphics
DataCamp
Python Tutorial: Customer Segmentation in Python
DataCamp
Python Tutorial: Time cohorts
DataCamp
Python Tutorial: Calculate cohort metrics
DataCamp
Python Tutorial: Cohort analysis visualization
DataCamp
R Tutorial: Building Dashboards with flexdashboard
DataCamp
R Tutorial: Anatomy of a flexdashboard
DataCamp
R Tutorial: Layout basics
DataCamp
R Tutorial: Advanced layouts
DataCamp
Python Tutorial: Time Series Analysis in Python
DataCamp
Python Tutorial: Correlation of Two Time Series
DataCamp
Python Tutorial: Simple Linear Regressions
DataCamp
Python Tutorial: Autocorrelation
DataCamp
R Tutorial: The gapminder dataset
DataCamp
R Tutorial: The filter verb
DataCamp
R Tutorial: The arrange verb
DataCamp
R Tutorial: The mutate verb
DataCamp
R Tutorial: What is cluster analysis?
DataCamp
R Tutorial: Distance between two observations
DataCamp
R Tutorial: The importance of scale
DataCamp
R Tutorial: Measuring distance for categorical data
DataCamp
Python Tutorial: Plotting multiple graphs
DataCamp
Python Tutorial: Customizing axes
DataCamp
Python Tutorial: Legends, annotations, & styles
DataCamp
Python Tutorial: Introduction to iterators
DataCamp
Python Tutorial: Playing with iterators
DataCamp
Python Tutorial: Using iterators to load large files into memory
DataCamp
SQL Tutorial: Introduction to Relational Databases in SQL
DataCamp
SQL Tutorial: Tables: At the core of every database
DataCamp
SQL Tutorial: Update your database as the structure changes
DataCamp
Python Tutorial: Classification-Tree Learning
DataCamp
Python Tutorial: Decision-Tree for Classification
DataCamp
Python Tutorial: Decision-Tree for Regression
DataCamp
Python Tutorial: Census Subject Tables
DataCamp
Python Tutorial: Census Geography
DataCamp
Python Tutorial: Using the Census API
DataCamp
R Tutorial: A/B Testing in R
DataCamp
R Tutorial: Baseline Conversion Rates
DataCamp
R Tutorial: Designing an Experiment - Power Analysis
DataCamp
R Tutorial: Introduction to qualitative data
DataCamp
R Tutorial: Understanding your qualitative variables
DataCamp
R Tutorial: Making Better Plots
DataCamp
SQL Tutorial: OLTP and OLAP
DataCamp
SQL Tutorial: Storing data
DataCamp
SQL Tutorial: Database design
DataCamp
Python Tutorial: Introduction to spaCy
DataCamp
Python Tutorial: Statistical Models
DataCamp
Python Tutorial: Rule-based Matching
DataCamp
Related AI Lessons
⚡
⚡
⚡
⚡
X now offers an MCP server to make its platform easier for AI tools to use
TechCrunch AI
n8n Automation Repurpose Video Content: The 2025 Production Guide
Dev.to AI
You’re Still Paying $200/Month for AI Tools You Could Replace With a Free Local Setup Tonight
Medium · Data Science
Top 10 AI Tools Every College Student Should Know in 2026
Medium · AI
🎓
Tutor Explanation
DeepCamp AI