It is assumed that you have read Sections 5.1 - 5.4 from R4DS and completed the Isolating Data with dplyr Primer.
In this activity, you will:
- Isolate variables and observations of a dataset using
{dplyr}
. - Rearrange a dataset by variables using
{dplyr}
. - Use the pipe
%>%
from{magrittr}
to build data pipelines. - Name R code chunks in an
.Rmd
report.
Remember to take these steps slowly, help each other out, and get a hold of your instructor when you have questions or issues.
- In this GitHub repo, click on the
Fork icon near the upper-right-hand corner. You should be taken
a copy of this repo that is in your GitHub account - your page title
should be
{username}/activity04-data-pipelines
, where{username}
is replaced with your GitHub username. - Click on the green Code button.
- Verify that the drop-down identifies that you are using the HTTPS method (this is probably the default view; otherwise, select “HTTPS”).
- Click on the icon to copy the repo HTTPS information.
- Log in to the RStudio Server.
- Verify that you are in an RStudio session (it doesn’t matter if it is a previous Project session or a “vanilla” RStudio session).
- Create a new Project. You can do this by clicking on the icon or through the menus (File > New Project…).
- In the New Project Wizard pop-up, select Version Control on the Create Project screen, then select Git on the Create Project from Version Control screen.
- On the Clone Git Repository screen, paste the HTTPS information
from (2) into the Repository URL dialog box. It should look like:
https://github.com/<username>/activity04-data-pipelines.git
- The Project directory name dialog box should automatically
populate with your repository name, but sometimes Macs have an issue
with this (if so, click into this box and press the command key on your keyboard).
It should look something like:
activity04-data-pipelines
- In the Create project as subdirectory of dialog box, click on Browse.
- In the Choose Directory pop-up, navigate to your class-level
folder (i.e., you were encouraged to create a folder named either
STA418
orSTA518
) You were also encouraged to create anactivities
folder within your class-level folder to help organize our materials. Once you have navigated to the folder you wish this repo to be located, click Choose. - Verify that the Create project as a directory of dialog box contains the folder location that you previously specified, then click on Create Project.
- You may be asked to login with your GitHub credentials on a Clone Repository pop-up window. Provide your GitHub username and PAT (not your GitHub password) if prompted.
- After a few seconds, your RStudio session will refresh and you should be in your newly created RStudio Project!
Starting with Activity 5, I will be no longer provide these steps and simply saying, “ Fork this repo and clone it to a new RStudio Project”. Also, setting up the Activity repo will be part of your Preparation “Do” work. Remember that more detailed directions are provided in this Activity.
Planned Pause Point: If you have any questions, contact your instructor or another group.I strongly encourage you to use pipes %>%
when working throughout this
semester. Pipes are from {magrittr}
and are a way to take nested
functions and make them more informative to read and write. Consider the
following lyrics from Bradford’s
college days:
To the left
Take it back now y’all
One hop this time
Right foot let’s stomp
Left foot let’s stomp
Cha cha real smooth
One way to write this out is with nested functions:
cha_cha(lets_stomp(lets_stomp(hops(take_it(to_the(direction = "left"), direction = "back", when = "now", who = "y'all"), this_time = 1), foot = "right"), foot = "left"), style = "real smooth")
If we start in the inner-most function, we can then work our way out to see what we are trying to do. Pipes, however, clean this up:
to_the(direction = "left") %>%
take_it(direction = "back", when = "now", who = "y'all") %>%
hops(this_time = 1) %>%
lets_stomp(foot = "right") %>%
lets_stomp(foot = "left") %>%
cha_cha(style = "real smooth")
Writing this using pipes give the statement a more natural structure. I will refer to this process of piping functions a “pipeline”.
Starting with R version
4.1.0,
there is now a native pipe |>
in R! However, this pipe does not have
one of the key features that the {magrittr}
pipe does which is that
you do not necessarily need the previous step to be the first argument
in the next step. Therefore, I encourage you to stick with the
{magrittr}
pipe.
The activity04-data-pipelines.Rmd
file contains the directions for
this activity. For the rest of this class period, you will complete the
RMarkdown document with your neighbor(s). Your instructor will be
circling and be available to help when needed.
Note that each person is working in their own repo. We are not worrying about collaborating for the time being and instead will be working on being more comfortable with the workflow for working between RStudio and GitHub.
However, do not continue in this README document until you and your
neighbor(s) have completed your .Rmd
files.
Take 5 minutes to write a reflection on what you feel confident in and what you need to spend some time better understanding. What is one thing you can do to help clarify your current misunderstandings?
Next: Activity 5 will focus on isolating rows and columns of datasets.