Course Schedule
This page displays an outline of the topics, content, and assignments for the term. Each module starts on a Wednesday. Note that all of your coding and project assignments are due on the Monday after they are assigned at 11:59 p.m.
Module | Date | Skills | Packages | Functions | Readings | Reference | Slides | Videos | Assignments |
---|---|---|---|---|---|---|---|---|---|
Aug 23 | Course Intro | ||||||||
GS | Aug 28 | RStudio and Quarto | 📖 | 🖥️ | 🖥️ | ||||
Aug 30 | More with Quarto | 📖 | 🖥️ | 🖥️🖥️ | |||||
1.1 | Sep 4 | Read data into R | readr , dplyr |
read_csv() , glimpse() |
📖 | 🖥️ | 🖥️🖥️ | ||
Sep 6 | Reshape, clean data | tidyr, dplyr |
pivot_longer(), mutate() , mutate_at() , substring() |
📖 | 🖥️ | 🖥️🖥️🖥️ | |||
1.2 | Sep 11 | Download data | wbstats , vdemdata , dplyr , janitor |
wb_data() , vdem , select_() , filter() , case_match() , round_to_fraction() |
📖 | 🖥️ | 🖥️🖥️ | ||
Sep 13 | Merge data frames, group, summarize and arrange | countrycode , dplyr , readr |
countrycode() , left_join() , write_csv() , group_by() , summarize() , arrange() |
📖 📖 | 🖥️ | 🖥️🖥️🖥️ | 🧮 | ||
2.1 | Sep 18 | Bar charts & histograms | ggplot2 |
ggplot() , geom_col() , geom_histogram() , aes() , labs() |
📖📖 | 🖥️ | 🖥️🖥️ | ||
Sep 27 | Line charts & scatter plots | ggplot2 , scales |
geom_line() , geom_point() , geom_smooth() , scale_x_log10(), label_number() , geom_text() |
📖 | 🖥️ | 🖥️🖥️ | |||
2.2 | Sep 25 | Color schemes | tidyr , colorBlindess , dplyr , viridis , RColorBrewer |
drop_na() , cvdPlot() , scale_fill_manual() , scale_fill_viridis_d() , scale_fill_brewer() , scale_color_manual() , scale_color_viridis_d() , scale_color_brewer |
📖 | 📖 | 🖥️ | 🖥️ | |
Sep 27 | Themes, annotations & interactivity | ggplot2 , plotly |
theme_dark() , theme_minimal() , annotate() , geom_hline() , geom_vline(),``ggplotly() , layout() |
📖 | 🖥️ | 🖥️🖥️🖥️ | 🧮 | ||
3.1 | Oct 2 | Map data with choropleth maps | rnaturalearth , ggplot2 , ggthemes , virids |
ne_countries() , geom_sf() , theme_map() , theme() , scale_fill_viridis_c() |
🖥️ | 🖥️🖥️ | |||
Oct 4 | Turn your map into a function | souce() , function() |
📖 | 📖 | 🖥️ | 🖥️ | |||
3.2 | Oct 9 | Make a leaflet map | states , sf , leaflet, htmltools |
leaflet() , st_as_sf() , addTiles() , addMarkers() ,addProviderTiles() |
🖥️ | 🖥️🖥️🖥️ | 🧮 | ||
Oct 11 | No class, fall break | 🍁🍂🎃 | |||||||
4.1 | Oct 16 | Exploring tabular data | tidycensus , dplyr , stringr , kableExtra |
census_api_key() , load_variables() , get_acs() , rename() , rename_with , str_remove() , kable() , slice_max() , slice_min() , slice_sample() , bind_rows() |
🖥️ | 🖥️🖥️ | |||
Oct 18 | Make a gt table, make confidence intervals with ggplot2 |
gt , ggplot2 |
gt() , tab_header() , cols_label() , fmt_currency() , tab_source_note() , cols_width() , opt_table_font() , cols_align() , tab_options() , gtsave() , geom_errorbar() |
🖥️ | 🖥️🖥️ | ||||
4.2 | Oct 23 | Display regression tables | peacesciencer , broom , dplyr |
create_stateyears() , add_ucdp_acd() , add_democracy() , add_creg_fractionalization() , add_sdp_gdp() , add_rugged_terrain() , tidy() , mutate_if() , glm() , binomial() |
📖 | 🖥️ | 🖥️ | ||
Oct 25 | Make regression tables and coefficient plots | modelsummary |
list() , modelsummary() , modelplot() , rev() |
🖥️🖥️ | 🧮 | ||||
5.1 | Oct 30 | Scatter plot app setup, building the UI | dplyr , shiny |
summarize_all() , fluidPage() , titlePanel() , sidebarLayout() , sidebarPanel() , selectInput() , mainPanel() , plotOutput() |
🖥️ | 🖥️🖥️ | |||
Nov 1 | Building the server | shiny |
renderPlot() , shinyApp() |
🖥️ | 🖥️ | ✍️ | |||
5.2 | Nov 6 | Line chart app setup, building the UI | fredr , shiny |
fredr_set_key() , as.Date() , Sys.Date() , column() , wellPanel() , helpText() , sliderInput() |
📖 | 🖥️ | 🖥️🖥️ | ||
Nov 8 | Building the server | fredr , shiny |
reactive() , fredr() , fred_indicator() |
🖥️ | 🖥️ | 🧮 | |||
6.1 | Nov 13 | Building your app | 🖥️ | 🖥️ | |||||
Nov 15 | Troubleshooting your app | 🖥️ | ✍️ | ||||||
6.2 | Nov 20 | Sharing your app | 🖥️ | ||||||
Nov 22 | Shinylive | ||||||||
Nov 27 | No class, Thanksgiving break | 🦃🥧🍂 | |||||||
Nov 29 | No class, Thanksgiving break | ||||||||
Dec 4 | Lightning talks | ||||||||
Dec 6 | Lightning talks | ✍️ |