Run the code below to load the
congress dataframe we will use in
1. In your own words, describe what a function is and provide one example of how you might use it in a data science.
2. Packages in R can contain many useful functions/commands. If you didn’t know what a certain function did, or how it worked, where within RStudio would you look to learn more / see example code? Where would you look outside RStudio?
3. Write a function that takes a character vector as an argument and
returns a character vector containing the first letters of each element
in the original vector. To show that it works, test it on the character
sentence defined below.
sentence <- c('you', 'only', 'understand', 'data', 'if', 'data', 'is', 'tidy') # your answer here
4. Create your own function which accepts a birthyear vector and
returns an approximate current age, then use it on the
column of the
congress dataframe to create a new
age column with
Note: functions used inside mutate accept single columns from the original dataframe and return a column or vector of the same size. This is a valuable tool for developing your workflow.
5. Write a function that accepts a date string and returns the day of
the week it corresponds to, then use it to create a new column of
congress representing the weekday of the birth of each politician
6. Write a function that accepts a dataframe with the columns
full_name, and prints the names and ages of the
oldest representatives in congress (i.e. not including senators) using
a “for loop”. In this sense,
k is an arbitrary number that should be
given as an argument to the function - set the default value to be 5. If
you use the dataframe as the first argument, you can use the pipe
operator (“%>%”) to pass the dataframe directly to the function. Define
your function such that you can use it like this:
congress %>% print_oldest(3).
7. Starting with the function from the previous question, change it
such that if k > 5, it only prints the first 5. Test isusing this code:
congress %>% print_oldest(100).
Thanks to Devin Cornell and Taylor Brown for helping to create these quizzes!