From ffacd0f2b77c4994c3992ffd1a4965dabea5d870 Mon Sep 17 00:00:00 2001 From: Claus Wilke Date: Mon, 26 Feb 2024 16:10:36 -0600 Subject: [PATCH] HW 5, Project 2 --- assignments/HW5.Rmd | 82 +++ assignments/HW5.html | 703 +++++++++++++++++++ assignments/Project_2.Rmd | 49 ++ assignments/Project_2.html | 452 ++++++++++++ assignments/Project_2_instructions.html | 496 +++++++++++++ assignments/Project_2_rubric.pdf | Bin 0 -> 59846 bytes docs/assignments/HW5.Rmd | 82 +++ docs/assignments/HW5.html | 703 +++++++++++++++++++ docs/assignments/Project_2.Rmd | 49 ++ docs/assignments/Project_2.html | 452 ++++++++++++ docs/assignments/Project_2_instructions.html | 496 +++++++++++++ docs/assignments/Project_2_rubric.pdf | Bin 0 -> 59846 bytes docs/schedule.html | 17 + docs/search.json | 10 +- schedule.Rmd | 15 + 15 files changed, 3601 insertions(+), 5 deletions(-) create mode 100644 assignments/HW5.Rmd create mode 100644 assignments/HW5.html create mode 100644 assignments/Project_2.Rmd create mode 100644 assignments/Project_2.html create mode 100644 assignments/Project_2_instructions.html create mode 100644 assignments/Project_2_rubric.pdf create mode 100644 docs/assignments/HW5.Rmd create mode 100644 docs/assignments/HW5.html create mode 100644 docs/assignments/Project_2.Rmd create mode 100644 docs/assignments/Project_2.html create mode 100644 docs/assignments/Project_2_instructions.html create mode 100644 docs/assignments/Project_2_rubric.pdf diff --git a/assignments/HW5.Rmd b/assignments/HW5.Rmd new file mode 100644 index 0000000..a74e984 --- /dev/null +++ b/assignments/HW5.Rmd @@ -0,0 +1,82 @@ +--- +title: "Homework 5" +output: + html_document: + theme: + version: 4 +--- + +```{r global_options, include=FALSE} +library(knitr) +library(tidyverse) +library(colorspace) +opts_chunk$set(fig.align="center", fig.height=4, fig.width=5.5) + +# data prep: +olympics <- readr::read_csv('https://raw.githubusercontent.com/rfordatascience/tidytuesday/master/data/2021/2021-07-27/olympics.csv') +olympics_2002 <- olympics %>% + filter(year == 2002, season == "Winter") %>% + select(sex) %>% + count(sex) %>% + pivot_wider(names_from = sex, values_from = n) + +#data prep: +midwest2 <- midwest %>% + filter(state != "IN") +``` + +**This homework is due on Mar. 7, 2024 at 11:00pm. Please submit as a pdf file on Canvas.** + +**Problem 1: (9 pts)** We will work with the dataset `olympics_2002` that contains the count of all athletes by sex for the 2002 Winter Olympics in Salt Lake City. It has been derived from the `olympics` dataset, which is described here: https://github.com/rfordatascience/tidytuesday/blob/master/data/2021/2021-07-27/readme.md + +```{r} +olympics_2002 +``` +Follow these steps and display the modified data frame after each step: + +1. Rearrange the data frame into long form. The resulting data frame will have two columns, which you should call `sex` and `count`, respectively. There will be two rows of data, one for female and one for male athletes. +2. Create a new column in which you calculate the percent of male and female ahtletes. +3. Rename the values in the column `sex` to "female" and "male". + +```{r} +# your code here +``` + +```{r} +# your code here +``` + +```{r} +# your code here +``` + +**Problem 2: (5 pts)** + +Use the color picker app from the **colorspace** package (`colorspace::choose_color()`) to create a qualitative color scale containing four colors. One of the four colors should be `#A23C42`, so you need to find three additional colors that go with this one. Use the function `swatchplot()` to plot your colors. `swatchplot()` takes in a vector. + +```{r} +# complete and uncomment +#my_colors <- c('#A23C42', ...) +#swatchplot(my_colors) +``` + +**Problem 3: (6 pts)** + +For this problem, we will work with the `midwest2` dataset (derived from `midwest`). In the following plot, you may notice that the axis tick labels are smaller than the axis titles, and also in a different color (gray instead of black). + +1. Use the colors you chose in Problem 1 to color the points. +2. Make the axis tick labels the same size (`size = 12`) and give them the color black (`color = "black"`) +3. Set the entire plot background to the color `"#FEF8F0"`. Make sure there are no white areas remaining, such as behind the plot panel or under the legend. + +```{r} +ggplot(midwest2, aes(popdensity, percollege, fill = state)) + + geom_point(shape = 21, size = 3, color = "white", stroke = 0.2) + + scale_x_log10(name = "population density") + + scale_y_continuous(name = "percent college educated") + + # your color choices go here in a scale function. + theme_classic(12) + + theme( + # your theme customization code goes here + ) +``` + diff --git a/assignments/HW5.html b/assignments/HW5.html new file mode 100644 index 0000000..0c9a2e5 --- /dev/null +++ b/assignments/HW5.html @@ -0,0 +1,703 @@ + + + + + + + + + + + + + +Homework 5 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + +

This homework is due on Mar. 7, 2024 at 11:00pm. Please +submit as a pdf file on Canvas.

+

Problem 1: (9 pts) We will work with the dataset +olympics_2002 that contains the count of all athletes by +sex for the 2002 Winter Olympics in Salt Lake City. It has been derived +from the olympics dataset, which is described here: https://github.com/rfordatascience/tidytuesday/blob/master/data/2021/2021-07-27/readme.md

+
olympics_2002
+
## # A tibble: 1 × 2
+##       F     M
+##   <int> <int>
+## 1  1582  2527
+

Follow these steps and display the modified data frame after each +step:

+
    +
  1. Rearrange the data frame into long form. The resulting data frame +will have two columns, which you should call sex and +count, respectively. There will be two rows of data, one +for female and one for male athletes.
  2. +
  3. Create a new column in which you calculate the percent of male and +female ahtletes.
  4. +
  5. Rename the values in the column sex to “female” and +“male”.
  6. +
+
# your code here
+
# your code here
+
# your code here
+

Problem 2: (5 pts)

+

Use the color picker app from the colorspace package +(colorspace::choose_color()) to create a qualitative color +scale containing four colors. One of the four colors should be +#A23C42, so you need to find three additional colors that +go with this one. Use the function swatchplot() to plot +your colors. swatchplot() takes in a vector.

+
# complete and uncomment
+#my_colors <- c('#A23C42', ...)
+#swatchplot(my_colors)
+

Problem 3: (6 pts)

+

For this problem, we will work with the midwest2 dataset +(derived from midwest). In the following plot, you may +notice that the axis tick labels are smaller than the axis titles, and +also in a different color (gray instead of black).

+
    +
  1. Use the colors you chose in Problem 1 to color the points.
  2. +
  3. Make the axis tick labels the same size (size = 12) and +give them the color black (color = "black")
  4. +
  5. Set the entire plot background to the color "#FEF8F0". +Make sure there are no white areas remaining, such as behind the plot +panel or under the legend.
  6. +
+
ggplot(midwest2, aes(popdensity, percollege, fill = state)) +
+  geom_point(shape = 21, size = 3, color = "white", stroke = 0.2) +
+  scale_x_log10(name = "population density") +
+  scale_y_continuous(name = "percent college educated") +
+  # your color choices go here in a scale function. 
+  theme_classic(12) +
+  theme(
+    # your theme customization code goes here
+  )
+

+ + + + +
+ + + + + + + + + + + + + + + diff --git a/assignments/Project_2.Rmd b/assignments/Project_2.Rmd new file mode 100644 index 0000000..343aa23 --- /dev/null +++ b/assignments/Project_2.Rmd @@ -0,0 +1,49 @@ +--- +title: "Project 2" +output: html_document +--- + +```{r setup, include=FALSE} +library(tidyverse) +knitr::opts_chunk$set(echo = TRUE) +``` + + +In this project, you will be working with a dataset about the members of Himalayan expeditions: +```{r message = FALSE} +members <- readr::read_csv('https://raw.githubusercontent.com/rfordatascience/tidytuesday/master/data/2020/2020-09-22/members.csv') + +members +``` + +More information about the dataset can be found at https://github.com/rfordatascience/tidytuesday/blob/master/data/2020/2020-09-22/readme.md and https://www.himalayandatabase.com/. + +**Hints:** + +- Make sure your two questions are actually questions, and not veiled instructions to perform a particular analysis. + +- Remember your code needs to contain at least three data manipulation functions for data wrangling before you plot. You are allowed to put all the data wrangling into the answer for one of the two questions. + +- Adjust `fig.width` and `fig.height` in the chunk headers to customize figure sizing and figure aspect ratios. + +You can delete these instructions from your project. Please also delete text such as *Your approach here* or `# Q1: Your R code here`. + +**Question 1:** *Your question 1 here.* + +**Question 2:** *Your question 2 here.* + +**Introduction:** *Your introduction here.* + +**Approach:** *Your approach here.* + +**Analysis:** + +```{r fig.width = 5, fig.height = 5} +# Q1: Your R code here +``` + +```{r fig.width = 5, fig.height = 5} +# Q2: Your R code here +``` + +**Discussion:** *Your discussion of results here.* diff --git a/assignments/Project_2.html b/assignments/Project_2.html new file mode 100644 index 0000000..c7707a3 --- /dev/null +++ b/assignments/Project_2.html @@ -0,0 +1,452 @@ + + + + + + + + + + + + + +Project 2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + +

In this project, you will be working with a dataset about the members +of Himalayan expeditions:

+
members <- readr::read_csv('https://raw.githubusercontent.com/rfordatascience/tidytuesday/master/data/2020/2020-09-22/members.csv')
+
+members
+
## # A tibble: 76,519 × 21
+##    expedition_id member_id    peak_id peak_name   year season sex     age
+##    <chr>         <chr>        <chr>   <chr>      <dbl> <chr>  <chr> <dbl>
+##  1 AMAD78301     AMAD78301-01 AMAD    Ama Dablam  1978 Autumn M        40
+##  2 AMAD78301     AMAD78301-02 AMAD    Ama Dablam  1978 Autumn M        41
+##  3 AMAD78301     AMAD78301-03 AMAD    Ama Dablam  1978 Autumn M        27
+##  4 AMAD78301     AMAD78301-04 AMAD    Ama Dablam  1978 Autumn M        40
+##  5 AMAD78301     AMAD78301-05 AMAD    Ama Dablam  1978 Autumn M        34
+##  6 AMAD78301     AMAD78301-06 AMAD    Ama Dablam  1978 Autumn M        25
+##  7 AMAD78301     AMAD78301-07 AMAD    Ama Dablam  1978 Autumn M        41
+##  8 AMAD78301     AMAD78301-08 AMAD    Ama Dablam  1978 Autumn M        29
+##  9 AMAD79101     AMAD79101-03 AMAD    Ama Dablam  1979 Spring M        35
+## 10 AMAD79101     AMAD79101-04 AMAD    Ama Dablam  1979 Spring M        37
+## # ℹ 76,509 more rows
+## # ℹ 13 more variables: citizenship <chr>, expedition_role <chr>, hired <lgl>,
+## #   highpoint_metres <dbl>, success <lgl>, solo <lgl>, oxygen_used <lgl>,
+## #   died <lgl>, death_cause <chr>, death_height_metres <dbl>, injured <lgl>,
+## #   injury_type <chr>, injury_height_metres <dbl>
+

More information about the dataset can be found at https://github.com/rfordatascience/tidytuesday/blob/master/data/2020/2020-09-22/readme.md +and https://www.himalayandatabase.com/.

+

Hints:

+ +

You can delete these instructions from your project. Please also +delete text such as Your approach here or +# Q1: Your R code here.

+

Question 1: Your question 1 here.

+

Question 2: Your question 2 here.

+

Introduction: Your introduction here.

+

Approach: Your approach here.

+

Analysis:

+
# Q1: Your R code here
+
# Q2: Your R code here
+

Discussion: Your discussion of results +here.

+ + + + +
+ + + + + + + + + + + + + + + diff --git a/assignments/Project_2_instructions.html b/assignments/Project_2_instructions.html new file mode 100644 index 0000000..4b06f6f --- /dev/null +++ b/assignments/Project_2_instructions.html @@ -0,0 +1,496 @@ + + + + + + + + + + + + + +Project 2 Instructions + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + +

Please use the project template R Markdown document to complete your +project. The knitted R Markdown document (as a PDF) and the raw +R Markdown file (as .Rmd) must be submitted to Canvas by 11:00pm on +Thurs., Mar 21, 2024. These two documents will be +graded jointly, so they must be consistent (as in, don’t change the R +Markdown file without also updating the knitted document!).

+

All results presented must have corresponding code, and the +code should be visible in the final generated pdf for ease of grading. +Any answers/results given without the corresponding R code that +generated the result will be considered absent. All code +reported in your final project document should work properly. Please do +not include any extraneous code or code which produces error messages. +(Code which produces warnings is acceptable, as long as you understand +what the warnings mean and explain this.)

+

For this project, you will be using a dataset about Himalayan +expeditions, taken from the Himalayan Database, a compilation of records +for all expeditions that have climbed in the Nepal Himalaya. The dataset +members contains records for all individuals who +participated in expeditions from 1905 through Spring 2019 to more than +465 significant peaks in Nepal.

+

Each record contains information including the name of the mountain +(peak_name), the year of the expedition +(year), the season (season), the age of the +expedition member (age), their citizenship +(citizenship), whether they used oxygen +(oxygen_used), and whether they successfully summitted the +peak (success). More information about the dataset can be +found at https://github.com/rfordatascience/tidytuesday/blob/master/data/2020/2020-09-22/readme.md +and https://www.himalayandatabase.com/.

+

The project structure will be similar to Project 1. However, this +time you will define the questions that you will then answer. Also, you +will have to do some data wrangling in addition to data visualization. +The final project should be structured as follows:

+ +

We encourage you to be concise. A paragraph should typically not be +longer than 5 sentences.

+

You are not required to perform any statistical +tests in this project, but you may do so if you find it helpful to +answer your question.

+
+

Instructions

+

First state the two questions you will answer. The questions should +be conceptual and open-ended and not prompt a specific analysis. In +particular, make sure you understand the difference between a question +and an instruction.

+

This is a question: How has the weight distribution of alpine +skiers changed over the years?

+

This is not a question; it is an instruction: +Make a series of boxplots of the weight of alpine skiers versus the +year of the olympics.

+

This is a question that prompts a specific analysis; it is actually +an instruction pretending to be a question: What is the value of the +slope parameter in a regression of skier weight versus year?

+

In the Introduction section, write a brief introduction to the +dataset, the questions, and what parts of the dataset are necessary to +answer the questions. You may repeat some of the information about the +dataset provided above, paraphrasing on your own terms. Imagine that +your project is a standalone document and the grader has no prior +knowledge of the dataset. You do not need to describe variables that are +never used in your analysis.

+

In the Approach section, describe what type of data wrangling you +will perform and what kind of plot you will generate to address your +questions. For each plot, provide a clear explanation as to why this +plot (e.g. boxplot, barplot, histogram, etc.) is best for providing the +information you are asking about. (You can draw on the materials provided +here for guidance.) The two plots should be of different +types, and at least one plot needs to use either color mapping or +faceting or both.

+

Across your two questions, your data wrangling code needs to use at +least three different data manipulation functions that modify data +tables, such as mutate(), filter(), +arrange(), select(), summarize(), +etc.

+

In the Analysis section, provide the code that performs required data +wrangling and then generates your plots. You may find it helpful to +compute and output summary tables in addition to making plots. Use scale +functions to provide nice axis labels and guides. Also, use theme +functions to customize the appearance of your plot. For full +points, you will have to apply some unique styling to your +plots; you cannot rely exclusively on preexisting theme +functions. All plots must be made with ggplot2. Do not use base R +plotting functions.

+

In the Discussion section, interpret the results of your analysis. +Identify any trends revealed (or not revealed) by the plots. Speculate +about why the data looks the way it does.

+
+ + + + +
+ + + + + + + + + + + + + + + diff --git a/assignments/Project_2_rubric.pdf b/assignments/Project_2_rubric.pdf new file mode 100644 index 0000000000000000000000000000000000000000..f9c22e5b9c3f363b0c4d2878e78f7eabe4541532 GIT binary patch literal 59846 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 literal 0 HcmV?d00001 diff --git a/docs/assignments/HW5.Rmd b/docs/assignments/HW5.Rmd new file mode 100644 index 0000000..a74e984 --- /dev/null +++ b/docs/assignments/HW5.Rmd @@ -0,0 +1,82 @@ +--- +title: "Homework 5" +output: + html_document: + theme: + version: 4 +--- + +```{r global_options, include=FALSE} +library(knitr) +library(tidyverse) +library(colorspace) +opts_chunk$set(fig.align="center", fig.height=4, fig.width=5.5) + +# data prep: +olympics <- readr::read_csv('https://raw.githubusercontent.com/rfordatascience/tidytuesday/master/data/2021/2021-07-27/olympics.csv') +olympics_2002 <- olympics %>% + filter(year == 2002, season == "Winter") %>% + select(sex) %>% + count(sex) %>% + pivot_wider(names_from = sex, values_from = n) + +#data prep: +midwest2 <- midwest %>% + filter(state != "IN") +``` + +**This homework is due on Mar. 7, 2024 at 11:00pm. Please submit as a pdf file on Canvas.** + +**Problem 1: (9 pts)** We will work with the dataset `olympics_2002` that contains the count of all athletes by sex for the 2002 Winter Olympics in Salt Lake City. It has been derived from the `olympics` dataset, which is described here: https://github.com/rfordatascience/tidytuesday/blob/master/data/2021/2021-07-27/readme.md + +```{r} +olympics_2002 +``` +Follow these steps and display the modified data frame after each step: + +1. Rearrange the data frame into long form. The resulting data frame will have two columns, which you should call `sex` and `count`, respectively. There will be two rows of data, one for female and one for male athletes. +2. Create a new column in which you calculate the percent of male and female ahtletes. +3. Rename the values in the column `sex` to "female" and "male". + +```{r} +# your code here +``` + +```{r} +# your code here +``` + +```{r} +# your code here +``` + +**Problem 2: (5 pts)** + +Use the color picker app from the **colorspace** package (`colorspace::choose_color()`) to create a qualitative color scale containing four colors. One of the four colors should be `#A23C42`, so you need to find three additional colors that go with this one. Use the function `swatchplot()` to plot your colors. `swatchplot()` takes in a vector. + +```{r} +# complete and uncomment +#my_colors <- c('#A23C42', ...) +#swatchplot(my_colors) +``` + +**Problem 3: (6 pts)** + +For this problem, we will work with the `midwest2` dataset (derived from `midwest`). In the following plot, you may notice that the axis tick labels are smaller than the axis titles, and also in a different color (gray instead of black). + +1. Use the colors you chose in Problem 1 to color the points. +2. Make the axis tick labels the same size (`size = 12`) and give them the color black (`color = "black"`) +3. Set the entire plot background to the color `"#FEF8F0"`. Make sure there are no white areas remaining, such as behind the plot panel or under the legend. + +```{r} +ggplot(midwest2, aes(popdensity, percollege, fill = state)) + + geom_point(shape = 21, size = 3, color = "white", stroke = 0.2) + + scale_x_log10(name = "population density") + + scale_y_continuous(name = "percent college educated") + + # your color choices go here in a scale function. + theme_classic(12) + + theme( + # your theme customization code goes here + ) +``` + diff --git a/docs/assignments/HW5.html b/docs/assignments/HW5.html new file mode 100644 index 0000000..0c9a2e5 --- /dev/null +++ b/docs/assignments/HW5.html @@ -0,0 +1,703 @@ + + + + + + + + + + + + + +Homework 5 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + +

This homework is due on Mar. 7, 2024 at 11:00pm. Please +submit as a pdf file on Canvas.

+

Problem 1: (9 pts) We will work with the dataset +olympics_2002 that contains the count of all athletes by +sex for the 2002 Winter Olympics in Salt Lake City. It has been derived +from the olympics dataset, which is described here: https://github.com/rfordatascience/tidytuesday/blob/master/data/2021/2021-07-27/readme.md

+
olympics_2002
+
## # A tibble: 1 × 2
+##       F     M
+##   <int> <int>
+## 1  1582  2527
+

Follow these steps and display the modified data frame after each +step:

+
    +
  1. Rearrange the data frame into long form. The resulting data frame +will have two columns, which you should call sex and +count, respectively. There will be two rows of data, one +for female and one for male athletes.
  2. +
  3. Create a new column in which you calculate the percent of male and +female ahtletes.
  4. +
  5. Rename the values in the column sex to “female” and +“male”.
  6. +
+
# your code here
+
# your code here
+
# your code here
+

Problem 2: (5 pts)

+

Use the color picker app from the colorspace package +(colorspace::choose_color()) to create a qualitative color +scale containing four colors. One of the four colors should be +#A23C42, so you need to find three additional colors that +go with this one. Use the function swatchplot() to plot +your colors. swatchplot() takes in a vector.

+
# complete and uncomment
+#my_colors <- c('#A23C42', ...)
+#swatchplot(my_colors)
+

Problem 3: (6 pts)

+

For this problem, we will work with the midwest2 dataset +(derived from midwest). In the following plot, you may +notice that the axis tick labels are smaller than the axis titles, and +also in a different color (gray instead of black).

+
    +
  1. Use the colors you chose in Problem 1 to color the points.
  2. +
  3. Make the axis tick labels the same size (size = 12) and +give them the color black (color = "black")
  4. +
  5. Set the entire plot background to the color "#FEF8F0". +Make sure there are no white areas remaining, such as behind the plot +panel or under the legend.
  6. +
+
ggplot(midwest2, aes(popdensity, percollege, fill = state)) +
+  geom_point(shape = 21, size = 3, color = "white", stroke = 0.2) +
+  scale_x_log10(name = "population density") +
+  scale_y_continuous(name = "percent college educated") +
+  # your color choices go here in a scale function. 
+  theme_classic(12) +
+  theme(
+    # your theme customization code goes here
+  )
+

+ + + + +
+ + + + + + + + + + + + + + + diff --git a/docs/assignments/Project_2.Rmd b/docs/assignments/Project_2.Rmd new file mode 100644 index 0000000..343aa23 --- /dev/null +++ b/docs/assignments/Project_2.Rmd @@ -0,0 +1,49 @@ +--- +title: "Project 2" +output: html_document +--- + +```{r setup, include=FALSE} +library(tidyverse) +knitr::opts_chunk$set(echo = TRUE) +``` + + +In this project, you will be working with a dataset about the members of Himalayan expeditions: +```{r message = FALSE} +members <- readr::read_csv('https://raw.githubusercontent.com/rfordatascience/tidytuesday/master/data/2020/2020-09-22/members.csv') + +members +``` + +More information about the dataset can be found at https://github.com/rfordatascience/tidytuesday/blob/master/data/2020/2020-09-22/readme.md and https://www.himalayandatabase.com/. + +**Hints:** + +- Make sure your two questions are actually questions, and not veiled instructions to perform a particular analysis. + +- Remember your code needs to contain at least three data manipulation functions for data wrangling before you plot. You are allowed to put all the data wrangling into the answer for one of the two questions. + +- Adjust `fig.width` and `fig.height` in the chunk headers to customize figure sizing and figure aspect ratios. + +You can delete these instructions from your project. Please also delete text such as *Your approach here* or `# Q1: Your R code here`. + +**Question 1:** *Your question 1 here.* + +**Question 2:** *Your question 2 here.* + +**Introduction:** *Your introduction here.* + +**Approach:** *Your approach here.* + +**Analysis:** + +```{r fig.width = 5, fig.height = 5} +# Q1: Your R code here +``` + +```{r fig.width = 5, fig.height = 5} +# Q2: Your R code here +``` + +**Discussion:** *Your discussion of results here.* diff --git a/docs/assignments/Project_2.html b/docs/assignments/Project_2.html new file mode 100644 index 0000000..c7707a3 --- /dev/null +++ b/docs/assignments/Project_2.html @@ -0,0 +1,452 @@ + + + + + + + + + + + + + +Project 2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + +

In this project, you will be working with a dataset about the members +of Himalayan expeditions:

+
members <- readr::read_csv('https://raw.githubusercontent.com/rfordatascience/tidytuesday/master/data/2020/2020-09-22/members.csv')
+
+members
+
## # A tibble: 76,519 × 21
+##    expedition_id member_id    peak_id peak_name   year season sex     age
+##    <chr>         <chr>        <chr>   <chr>      <dbl> <chr>  <chr> <dbl>
+##  1 AMAD78301     AMAD78301-01 AMAD    Ama Dablam  1978 Autumn M        40
+##  2 AMAD78301     AMAD78301-02 AMAD    Ama Dablam  1978 Autumn M        41
+##  3 AMAD78301     AMAD78301-03 AMAD    Ama Dablam  1978 Autumn M        27
+##  4 AMAD78301     AMAD78301-04 AMAD    Ama Dablam  1978 Autumn M        40
+##  5 AMAD78301     AMAD78301-05 AMAD    Ama Dablam  1978 Autumn M        34
+##  6 AMAD78301     AMAD78301-06 AMAD    Ama Dablam  1978 Autumn M        25
+##  7 AMAD78301     AMAD78301-07 AMAD    Ama Dablam  1978 Autumn M        41
+##  8 AMAD78301     AMAD78301-08 AMAD    Ama Dablam  1978 Autumn M        29
+##  9 AMAD79101     AMAD79101-03 AMAD    Ama Dablam  1979 Spring M        35
+## 10 AMAD79101     AMAD79101-04 AMAD    Ama Dablam  1979 Spring M        37
+## # ℹ 76,509 more rows
+## # ℹ 13 more variables: citizenship <chr>, expedition_role <chr>, hired <lgl>,
+## #   highpoint_metres <dbl>, success <lgl>, solo <lgl>, oxygen_used <lgl>,
+## #   died <lgl>, death_cause <chr>, death_height_metres <dbl>, injured <lgl>,
+## #   injury_type <chr>, injury_height_metres <dbl>
+

More information about the dataset can be found at https://github.com/rfordatascience/tidytuesday/blob/master/data/2020/2020-09-22/readme.md +and https://www.himalayandatabase.com/.

+

Hints:

+
    +
  • Make sure your two questions are actually questions, and not +veiled instructions to perform a particular analysis.

  • +
  • Remember your code needs to contain at least three data +manipulation functions for data wrangling before you plot. You are +allowed to put all the data wrangling into the answer for one of the two +questions.

  • +
  • Adjust fig.width and fig.height in the +chunk headers to customize figure sizing and figure aspect +ratios.

  • +
+

You can delete these instructions from your project. Please also +delete text such as Your approach here or +# Q1: Your R code here.

+

Question 1: Your question 1 here.

+

Question 2: Your question 2 here.

+

Introduction: Your introduction here.

+

Approach: Your approach here.

+

Analysis:

+
# Q1: Your R code here
+
# Q2: Your R code here
+

Discussion: Your discussion of results +here.

+ + + + +
+ + + + + + + + + + + + + + + diff --git a/docs/assignments/Project_2_instructions.html b/docs/assignments/Project_2_instructions.html new file mode 100644 index 0000000..4b06f6f --- /dev/null +++ b/docs/assignments/Project_2_instructions.html @@ -0,0 +1,496 @@ + + + + + + + + + + + + + +Project 2 Instructions + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + +

Please use the project template R Markdown document to complete your +project. The knitted R Markdown document (as a PDF) and the raw +R Markdown file (as .Rmd) must be submitted to Canvas by 11:00pm on +Thurs., Mar 21, 2024. These two documents will be +graded jointly, so they must be consistent (as in, don’t change the R +Markdown file without also updating the knitted document!).

+

All results presented must have corresponding code, and the +code should be visible in the final generated pdf for ease of grading. +Any answers/results given without the corresponding R code that +generated the result will be considered absent. All code +reported in your final project document should work properly. Please do +not include any extraneous code or code which produces error messages. +(Code which produces warnings is acceptable, as long as you understand +what the warnings mean and explain this.)

+

For this project, you will be using a dataset about Himalayan +expeditions, taken from the Himalayan Database, a compilation of records +for all expeditions that have climbed in the Nepal Himalaya. The dataset +members contains records for all individuals who +participated in expeditions from 1905 through Spring 2019 to more than +465 significant peaks in Nepal.

+

Each record contains information including the name of the mountain +(peak_name), the year of the expedition +(year), the season (season), the age of the +expedition member (age), their citizenship +(citizenship), whether they used oxygen +(oxygen_used), and whether they successfully summitted the +peak (success). More information about the dataset can be +found at https://github.com/rfordatascience/tidytuesday/blob/master/data/2020/2020-09-22/readme.md +and https://www.himalayandatabase.com/.

+

The project structure will be similar to Project 1. However, this +time you will define the questions that you will then answer. Also, you +will have to do some data wrangling in addition to data visualization. +The final project should be structured as follows:

+
    +
  • Questions (2 specific questions you will answer)
  • +
  • Introduction (1–2 paragraphs)
  • +
  • Approach (2–3 paragraphs)
  • +
  • Analysis (2–4 code blocks, 2 figures total, 1–2 for each question, +text/code comments as needed)
  • +
  • Discussion (1–3 paragraphs)
  • +
+

We encourage you to be concise. A paragraph should typically not be +longer than 5 sentences.

+

You are not required to perform any statistical +tests in this project, but you may do so if you find it helpful to +answer your question.

+
+

Instructions

+

First state the two questions you will answer. The questions should +be conceptual and open-ended and not prompt a specific analysis. In +particular, make sure you understand the difference between a question +and an instruction.

+

This is a question: How has the weight distribution of alpine +skiers changed over the years?

+

This is not a question; it is an instruction: +Make a series of boxplots of the weight of alpine skiers versus the +year of the olympics.

+

This is a question that prompts a specific analysis; it is actually +an instruction pretending to be a question: What is the value of the +slope parameter in a regression of skier weight versus year?

+

In the Introduction section, write a brief introduction to the +dataset, the questions, and what parts of the dataset are necessary to +answer the questions. You may repeat some of the information about the +dataset provided above, paraphrasing on your own terms. Imagine that +your project is a standalone document and the grader has no prior +knowledge of the dataset. You do not need to describe variables that are +never used in your analysis.

+

In the Approach section, describe what type of data wrangling you +will perform and what kind of plot you will generate to address your +questions. For each plot, provide a clear explanation as to why this +plot (e.g. boxplot, barplot, histogram, etc.) is best for providing the +information you are asking about. (You can draw on the materials provided +here for guidance.) The two plots should be of different +types, and at least one plot needs to use either color mapping or +faceting or both.

+

Across your two questions, your data wrangling code needs to use at +least three different data manipulation functions that modify data +tables, such as mutate(), filter(), +arrange(), select(), summarize(), +etc.

+

In the Analysis section, provide the code that performs required data +wrangling and then generates your plots. You may find it helpful to +compute and output summary tables in addition to making plots. Use scale +functions to provide nice axis labels and guides. Also, use theme +functions to customize the appearance of your plot. For full +points, you will have to apply some unique styling to your +plots; you cannot rely exclusively on preexisting theme +functions. All plots must be made with ggplot2. Do not use base R +plotting functions.

+

In the Discussion section, interpret the results of your analysis. +Identify any trends revealed (or not revealed) by the plots. Speculate +about why the data looks the way it does.

+
+ + + + +
+ + + + + + + + + + + + + + + diff --git a/docs/assignments/Project_2_rubric.pdf b/docs/assignments/Project_2_rubric.pdf new file mode 100644 index 0000000000000000000000000000000000000000..f9c22e5b9c3f363b0c4d2878e78f7eabe4541532 GIT binary patch literal 59846 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 literal 0 HcmV?d00001 diff --git a/docs/schedule.html b/docs/schedule.html index 5c9e162..a0eb2ad 100644 --- a/docs/schedule.html +++ b/docs/schedule.html @@ -2722,6 +2722,13 @@

Homework 4 (due Feb 29, 2024)

  • HTML
  • Homework 5 (due Mar 7, 2024)

    +

    +Materials: +

    +

    Homework 6 (due Apr 4, 2024)

    Homework 7 (due Apr 11, 2024)

    Projects

    @@ -2738,6 +2745,16 @@

    Project 1 (due Feb 15, 2024)

  • Example project
  • Project 2 (due Mar 21, 2024)

    +

    +Materials: +

    + +

    Please use the example and the solutions from Project 1 as examples for Project 2.

    Project 3 (due Apr 18, 2024)

    Reuse

    Text and figures are licensed under Creative Commons Attribution CC BY 4.0. Any computer code (R, HTML, CSS, etc.) in slides and worksheets, including in slide and worksheet sources, is also licensed under MIT. Note that figures in slides may be pulled in from external sources and may be licensed under different terms. For such images, image credits are available in the slide notes, accessible via pressing the letter ‘p’.

    diff --git a/docs/search.json b/docs/search.json index ec37146..3ba64e8 100644 --- a/docs/search.json +++ b/docs/search.json @@ -6,21 +6,21 @@ "description": "Data Visualization in R", "author": [], "contents": "\nThis is the home page for SDS 375, Data Visualization in R. All course materials will be posted on this site.\nInstructor: Claus O. Wilke\nMeeting times: TTH 3:30pm to 5:00pm\nVenue: UTC 4.110\nSyllabus: click here\nUpcoming lectures and assignments: click here\nComputing requirements\nFor students enrolled in this course, you only need a working web browser to access the edupod server, located at: https://edupod.cns.utexas.edu/\nIf you are using the edupod server, stop reading here. Everything is pre-installed and no further action is needed.\nTo run any of the materials locally on your own machine, you will need the following:\nA recent version of R, download from here.\nA recent version of RStudio, download from here.\nThe following R packages:\nbroom, cluster, colorspace, cowplot, distill, gapminder, GGally, gganimate, ggiraph, ggdendro, ggdist, ggforce, ggplot2movies, ggrepel, ggridges, ggthemes, gifski, glue, knitr, learnr, naniar, margins, MASS, Matrix, nycflights13, palmerpenguins, patchwork, rmarkdown, rnaturalearth, rnaturalearthhires, scales, sf, shinyjs, sp, tidyverse, transformr, umap, xaringan\nYou can install all required R packages at once by running the following code in the R command line:\n\n\n# first run this command:\ninstall.packages(\n c(\n \"broom\", \"cluster\", \"colorspace\", \"cowplot\", \"distill\", \"gapminder\", \n \"GGally\", \"gganimate\", \"ggiraph\", \"ggdendro\", \"ggdist\", \"ggforce\",\n \"ggplot2movies\", \"ggrepel\", \"ggridges\", \"ggthemes\", \"gifski\", \"glue\",\n \"knitr\", \"learnr\", \"naniar\", \"margins\", \"MASS\", \"Matrix\",\n \"nycflights13\", \"palmerpenguins\", \"patchwork\", \"rmarkdown\", \"rnaturalearth\",\n \"scales\", \"sf\", \"shinyjs\", \"sp\", \"tidyverse\", \"transformr\", \"umap\",\n \"xaringan\"\n )\n)\n\n# then run this command:\ninstall.packages(\n \"rnaturalearthhires\", repos = \"https://packages.ropensci.org\", type = \"source\"\n)\n\n\nReuse\nText and figures are licensed under Creative Commons Attribution CC BY 4.0. Any computer code (R, HTML, CSS, etc.) in slides and worksheets, including in slide and worksheet sources, is also licensed under MIT. Note that figures in slides may be pulled in from external sources and may be licensed under different terms. For such images, image credits are available in the slide notes, accessible via pressing the letter ‘p’.\n\n\n\n", - "last_modified": "2024-02-26T14:15:51-06:00" + "last_modified": "2024-02-26T16:10:11-06:00" }, { "path": "LICENSE.html", "author": [], "contents": "\nMIT License\nCopyright (c) 2021 Claus O. Wilke\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the “Software”), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\nTHE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n\n\n", - "last_modified": "2024-02-26T14:15:51-06:00" + "last_modified": "2024-02-26T16:10:12-06:00" }, { "path": "schedule.html", "title": "SDS 375 Schedule Spring 2024", "description": "", "author": [], - "contents": "\n\nContents\nLectures\nHomeworks\nProjects\nReuse\n\nLectures\n1. Jan 16, 2024—Introduction\n\nMaterials:\n\nSlides\nWorksheet (Solutions are available here)\n2. Jan 18, 2024—Aesthetic mappings\n\nMaterials:\n\nSlides\nWorksheet\n3. Jan 23, 2024—Telling a story, Visualizing amounts\n\nMaterials:\n\nSlides: Telling a story\nSlides: Visualizing amounts\nWorksheet\n4. Jan 25, 2024—Coordinate systems and axes\n\nMaterials:\n\nSlides\nWorksheet\n5. Jan 30, 2024—Visualizing distributions 1\n\nMaterials:\n\nSlides\nWorksheet\n6. Feb 1, 2024—Visualizing distributions 2\n\nMaterials:\n\nSlides\nWorksheet\n7. Feb 6, 2024—Color scales\n\nMaterials:\n\nSlides\nWorksheet\n8. Feb 8, 2024—Data wrangling 1\n\nMaterials:\n\nSlides\nWorksheet\n9. Feb 13, 2024—Data wrangling 2\n\nMaterials:\n\nSlides\nWorksheet\n10. Feb 15, 2024—Visualizing proportions\n\nMaterials:\n\nSlides\nWorksheet\n11. Feb 20, 2024—Getting to know your data\n\nMaterials:\n\nSlides 1\nSlides 2\nWorksheet 1: Data cleaning and inspection\nWorksheet 2: Missing values\n12. Feb 22, 2024—Getting things into the right order\n\nMaterials:\n\nSlides\nWorksheet\n13. Feb 27, 2024—Figure design\n\nMaterials:\n\nSlides\nWorksheet\n14. Feb 29, 2024—Color spaces and color-vision deficiency\n\nMaterials:\n\nSlides\nWorksheet\nHomeworks\nAll homeworks are due by 11:00pm on the day they are due. Homeworks need to be submitted as pdf files on Canvas.\nHomework 1 (due Jan 25, 2024)\n\nMaterials:\n\nR Markdown template\nHTML\nHomework 2 (due Feb 1, 2024)\n\nMaterials:\n\nR Markdown template\nHTML\nHomework 3 (due Feb 8, 2024)\n\nMaterials:\n\nR Markdown template\nHTML\nHomework 4 (due Feb 29, 2024)\n\nMaterials:\n\nR Markdown template\nHTML\nHomework 5 (due Mar 7, 2024)\nHomework 6 (due Apr 4, 2024)\nHomework 7 (due Apr 11, 2024)\nProjects\nAll projects are due by 11:00pm on the day they are due. Projects need to be submitted on Canvas. Please carefully read the submission instructions for each project.\nProject 1 (due Feb 15, 2024)\n\nMaterials:\n\nInstructions\nProject Template (Rmd)\nProject Template (HTML)\nGrading rubric\nExample project\nProject 2 (due Mar 21, 2024)\nProject 3 (due Apr 18, 2024)\nReuse\nText and figures are licensed under Creative Commons Attribution CC BY 4.0. Any computer code (R, HTML, CSS, etc.) in slides and worksheets, including in slide and worksheet sources, is also licensed under MIT. Note that figures in slides may be pulled in from external sources and may be licensed under different terms. For such images, image credits are available in the slide notes, accessible via pressing the letter ‘p’.\n\n\n\n", - "last_modified": "2024-02-26T14:15:52-06:00" + "contents": "\n\nContents\nLectures\nHomeworks\nProjects\nReuse\n\nLectures\n1. Jan 16, 2024—Introduction\n\nMaterials:\n\nSlides\nWorksheet (Solutions are available here)\n2. Jan 18, 2024—Aesthetic mappings\n\nMaterials:\n\nSlides\nWorksheet\n3. Jan 23, 2024—Telling a story, Visualizing amounts\n\nMaterials:\n\nSlides: Telling a story\nSlides: Visualizing amounts\nWorksheet\n4. Jan 25, 2024—Coordinate systems and axes\n\nMaterials:\n\nSlides\nWorksheet\n5. Jan 30, 2024—Visualizing distributions 1\n\nMaterials:\n\nSlides\nWorksheet\n6. Feb 1, 2024—Visualizing distributions 2\n\nMaterials:\n\nSlides\nWorksheet\n7. Feb 6, 2024—Color scales\n\nMaterials:\n\nSlides\nWorksheet\n8. Feb 8, 2024—Data wrangling 1\n\nMaterials:\n\nSlides\nWorksheet\n9. Feb 13, 2024—Data wrangling 2\n\nMaterials:\n\nSlides\nWorksheet\n10. Feb 15, 2024—Visualizing proportions\n\nMaterials:\n\nSlides\nWorksheet\n11. Feb 20, 2024—Getting to know your data\n\nMaterials:\n\nSlides 1\nSlides 2\nWorksheet 1: Data cleaning and inspection\nWorksheet 2: Missing values\n12. Feb 22, 2024—Getting things into the right order\n\nMaterials:\n\nSlides\nWorksheet\n13. Feb 27, 2024—Figure design\n\nMaterials:\n\nSlides\nWorksheet\n14. Feb 29, 2024—Color spaces and color-vision deficiency\n\nMaterials:\n\nSlides\nWorksheet\nHomeworks\nAll homeworks are due by 11:00pm on the day they are due. Homeworks need to be submitted as pdf files on Canvas.\nHomework 1 (due Jan 25, 2024)\n\nMaterials:\n\nR Markdown template\nHTML\nHomework 2 (due Feb 1, 2024)\n\nMaterials:\n\nR Markdown template\nHTML\nHomework 3 (due Feb 8, 2024)\n\nMaterials:\n\nR Markdown template\nHTML\nHomework 4 (due Feb 29, 2024)\n\nMaterials:\n\nR Markdown template\nHTML\nHomework 5 (due Mar 7, 2024)\n\nMaterials:\n\nR Markdown template\nHTML\nHomework 6 (due Apr 4, 2024)\nHomework 7 (due Apr 11, 2024)\nProjects\nAll projects are due by 11:00pm on the day they are due. Projects need to be submitted on Canvas. Please carefully read the submission instructions for each project.\nProject 1 (due Feb 15, 2024)\n\nMaterials:\n\nInstructions\nProject Template (Rmd)\nProject Template (HTML)\nGrading rubric\nExample project\nProject 2 (due Mar 21, 2024)\n\nMaterials:\n\nInstructions\nProject Template (Rmd)\nProject Template (HTML)\nGrading rubric\nPlease use the example and the solutions from Project 1 as examples for Project 2.\nProject 3 (due Apr 18, 2024)\nReuse\nText and figures are licensed under Creative Commons Attribution CC BY 4.0. Any computer code (R, HTML, CSS, etc.) in slides and worksheets, including in slide and worksheet sources, is also licensed under MIT. Note that figures in slides may be pulled in from external sources and may be licensed under different terms. For such images, image credits are available in the slide notes, accessible via pressing the letter ‘p’.\n\n\n\n", + "last_modified": "2024-02-26T16:10:12-06:00" }, { "path": "syllabus.html", @@ -28,7 +28,7 @@ "description": "", "author": [], "contents": "\n\nContents\nCourse title and instructor\nPurpose and contents of the class\nPrerequisites\nTextbook\nTopics covered\nComputing requirements\nCourse site\nAssignments and grading\nLate assignment policy\nOffice hours\nEmail policy\nSpecial accommodations\nAcademic dishonesty\nSharing of Course Materials is Prohibited\nClass Recordings\nReuse\n\nCourse title and instructor\nTitle: SDS 375 Data Visualization in RSemester: Spring 2024Unique: 56690, TTH 3:30pm–5:00pm, UTC 4.110\nInstructor: Claus O. WilkeEmail: wilke@austin.utexas.eduOffice Hours: Mon. 9am - 10am (open Zoom), Thurs. 10am - 11am (open Zoom), or by appointment\nTeaching Assistant: Alexis HillEmail: alexis.hill@utexas.eduOffice Hours: Wed. 2pm - 3PM (open Zoom), Thurs. 11am - 12pm (open Zoom), or by appointment\nPurpose and contents of the class\nIn this class, students will learn how to visualize data sets and how to reason about and communicate with data visualizations. A substantial component of this class will be dedicated to learning how to program in R. In addition, students will learn how to compile analyses and visualizations into reports, how to make the reports reproducible, and how to post reports on a website or blog.\nPrerequisites\nThe class requires no prior knowledge of programming. However, students are expected to have successfully completed an introductory statistics class taught with R, such as SDS 320E, and they are expected to have some basic familiarity with the statistical language R.\nTextbook\nThis class draws heavily from materials presented in the following book:\nClaus O. Wilke. Fundamentals of Data Visualization. O’Reilly Media, 2019.\nAdditionally, we will also make use of the following books:\nHadley Wickham, Danielle Navarro, and Thomas Lin Pedersen. ggplot2: Elegant Graphics for Data Analysis, 3rd ed. Springer, to appear.\nKieran Healy. Data Visualization: A Practical Introduction. Princeton University Press, 2018.\nAll these books are freely available online and you do not need to purchase a physical copy of either book to succeed in this class.\nTopics covered\n\nClass\nTopic\nCoding concepts covered\n1.\nIntroduction, reproducible\nworkflows\nRStudio setup online, R Markdown\n2.\nAesthetic mappings\nggplot2 quickstart\n3.\nTelling a story\n\n4.\nVisualizing amounts\ngeom_col(), geom_point(),\nposition adjustments\n5.\nCoordinate systems and\naxes\ncoords and position scales\n6.\nVisualizing distributions\n1\nstats, geom_density(),\ngeom_histogram()\n7.\nVisualizing distributions\n2\nviolin plots, sina plots, ridgeline plots\n8.\nColor scales\ncolor and fill scales\n9.\nData wrangling 1\nmutate(), filter(), arrange()\n10.\nData wrangling 2\ngroup_by(), summarize(), count()\n11.\nVisualizing proportions\nbar charts, pie charts\n12.\nGetting to know your data\nhandling missing data, is.na(), case_when()\n13.\nGetting things into the\nright order\nfct_reorder(), fct_lump()\n14.\nFigure design\nggplot themes\n15.\nColor spaces, color vision\ndeficiency\ncolorspace package\n16.\nFunctions and functional\nprogramming\nmap(), nest(), purrr package\n17.\nVisualizing trends\ngeom_smooth()\n18.\nWorking with models\nlm, cor.test, broom package\n19.\nVisualizing uncertainty\nfrequency framing, error bars, ggdist package\n20.\nDimension reduction 1\nPCA\n21.\nDimension reduction 2\nkernel PCA, t-SNE, UMAP\n22.\nClustering 1\nk-means clustering\n23.\nClustering 2\nhierarchical clustering\n24.\nVisualizing geospatial\ndata\ngeom_sf(), coord_sf()\n25.\nRedundant coding, text\nannotations\nggrepel package\n26.\nInteractive plots\nggiraph package\n27.\nOver-plotting\njittering, 2d histograms,\ncontour plots\n28.\nCompound figures\npatchwork package\n\nComputing requirements\nProgramming needs to be learned by doing, and a significant portion of the in-class time will be dedicated to working through simple problems. All programming exercises will be available through a web-based system, so the only system requirement for student computers is a modern web browser.\nCourse site\nAll materials and assignments will be posted on the course webpage at:\nhttps://wilkelab.org/SDS375\nAssignment deadlines are shown on the schedule at: https://wilkelab.org/SDS375/schedule.html\nAssignments will be submitted and grades will be posted on Canvas at:\nhttps://utexas.instructure.com\nParticipation via presence in class and in online discussions will also be tracked on Canvas.\nR compute sessions are available at:\nhttps://edupod.cns.utexas.edu\nNote that edupods will be unavailable due to maintenance approximately two hours per month, usually on a Thursday afternoon between 4pm and 6pm. Specific maintenance times are published in advance here:\nhttps://wikis.utexas.edu/display/RCTFusers\nAssignments and grading\nThe graded components of this class will be homeworks, projects, peer-grading, and participation. Each week either a homework, a project, or a peer-grading is due. Homeworks will be relatively short visualization problems to be solved by the student, usually involving some small amount of programming to achieve a specified goal. They are graded by the TA. Projects are larger and more involved data analysis problems that involve both programming and writing. They are peer-graded by the students. Students will have at least one week to complete each homework and two weeks to complete each project. The submission deadlines for homeworks and projects will be Thursdays at 11pm.\nThere will be seven homeworks and three projects. Both homeworks and projects need to be submitted electronically on Canvas. Homeworks are worth 20 points and projects are worth 100 points. The lowest-scoring homework will be dropped, so that a maximum of 120 points can be obtained from the homeworks.\nProjects are peer-graded, which involves evaluating three projects by other students according to a detailed grading rubric that will be provided. The final grade for each project is the mean of the peer-graded projects. The peer-grading itself will be graded by the TA, who will also oversee and spot-check the assigned peer grades. Experience has shown that peer-grading is often the most instructive component of this class, so don’t take this lightly.\nParticipation is assessed in two ways. First, students will receive 2 points for every lecture they attend. This is tracked via simple quizzes on Canvas. Second, each week students can receive up to 4 points for making substantive contributions to the Canvas online discussion (2 points per contribution). Total participation points are capped at 52 (13 weeks of class times 4 points), so students can compensate for lack of in-person attendance by participating in discussions and vice versa. You do not have to get full points in both in-person attendance and online discussions. No participation is assessed in the first week of class.\n\nAssignment type\nNumber\nPoints per assignment\nTotal points\nHomework\n6 (+1)\n20\n120\nProject\n3\n100\n300\nPeer grading\n3\n16\n48\nParticipation\n26 (+26)\n2\n52\n\nThus, in summary, each project (+ peer grading) contributes 22% to the final grade, the totality of all homeworks contributes another 23% to the final grade, and participation contributes 10%. There are no traditional exams in this class and there is no final.\nThe class will use +/- grading, and the exact grade boundaries will be determined at the end of the semester. However, the following minimum grades will be guaranteed:\n\nPoints achieved\nMinimum guaranteed grade\n468 (90%)\nA-\n416 (80%)\nB-\n364 (70%)\nC-\n260 (50%)\nD-\n\nLate assignment policy\nHomeworks that are submitted past the posted deadline will not be graded and will receive 0 points.\nProject submissions will have a 1-day grace period. Projects submitted during the grace period will have 25 points deducted from the obtained grade. After the grace period, students who have not submitted their project will receive 0 points.\nPeer grades need to be submitted by the posted deadline. Late submissions will result in 0 points for the peer-grading effort.\nIn case of illness or other unforeseen circumstances out of your control, please reach out to Claus Wilke as soon as possible. We will consider your request on a case-by-case basis. If you need a deadline extension for valid reasons, please reach out before the official submission deadline and state how much of an extension you would need. Whether deadline extensions are possible depends on the severity of your situation as well as whether the solutions to the assignment have already been published.\nOffice hours\nBoth the graduate TA and myself will be available at posted times or by appointment. Office hours will be over Zoom. The most effective way to request an appointment for office hours outside of posted times is to suggest several times that work for you. I would suggest to write an email such as the following:\nDear Dr. Wilke,\n\nI would like to request a meeting with you outside of \nregular office hours this week. I am available Thurs.\nbetween 1pm and 2:30pm or Fri. before 11am or after 4pm.\n\nThanks a lot,\n John Doe\nNote that we will not usually make appointments before 9am or after 5pm.\nEmail policy\nWhen emailing about this course, please put “SDS375” into the subject line. Emails to the instructor or TA should be restricted to organizational issues, such as requests for appointments, questions about course organization, etc. For all other issues, post in the discussions on Canvas, ask a question during open Zoom, or make an appointment for a one-on-one session.\nSpecifically, we will not discuss technical issues related to assignments over email. Technical issues are questions concerning how to approach a particular problem, whether a particular solution is correct, or how to use the statistical software R. These questions should be posted as issues on GitHub. Also, we will not discuss grading-related matters over email. If you have a concern about grading, schedule a one-on-one Zoom meeting.\nSpecial accommodations\nStudents with disabilities. Students with disabilities may request appropriate accommodations from the Division of Diversity and Community Engagement, Services for Students with Disabilities, 512-471-6259, https://diversity.utexas.edu/disability/\nReligious holy days. Students who must miss a class or an assignment to observe a religious holy day will be given an opportunity to complete the missed work within a reasonable time after the absence. According to UT Austin policy, such students must notify me of the pending absence at least fourteen days prior to the date of observance of a religious holy day.\nAcademic dishonesty\nThis course is built upon the idea that student interaction is important and a powerful way to learn. We encourage you to communicate with other students, in particular through the discussion forums on Canvas. However, there are times when you need to demonstrate your own ability to work and solve problems. In particular, your homeworks and projects are independent work, unless explicitly stated otherwise. You are allowed to confer with fellow students about general approaches to solve the problems in the assignments, but you have to do the assignments on your own and describe your work in your own words. Students who violate these expectations can expect to receive a failing grade on the assignment and will be reported to Student Judicial Services. These types of violations are reported to professional schools, should you ever decide to apply one day. Don’t do it—it’s not worth the consequences.\nSharing of Course Materials is Prohibited\nAny materials in this class that are not posted publicly may not be shared online or with anyone outside of the class unless you have my explicit, written permission. This includes but is not limited to lecture hand-outs, videos, assessments (quizzes, exams, papers, projects, homework assignments), in-class materials, review sheets, and additional problem sets. Unauthorized sharing of materials promotes cheating. It is a violation of the University’s Student Honor Code and an act of academic dishonesty. We are well aware of the sites used for sharing materials, and any materials found online that are associated with you, or any suspected unauthorized sharing of materials, will be reported to Student Conduct and Academic Integrity in the Office of the Dean of Students. These reports can result in sanctions, including failure in the course.\nAny materials posted on the public class website (https://wilkelab.org/SDS375/) are considered public and can be shared under the Creative Commons Attribution CC BY 4.0 license.\nClass Recordings\nIf any class recordings are provided they are reserved only for students in this class for educational purposes and are protected under FERPA. The recordings should not be shared outside the class in any form. Violation of this restriction by a student could lead to Student Misconduct proceedings.\nReuse\nText and figures are licensed under Creative Commons Attribution CC BY 4.0. Any computer code (R, HTML, CSS, etc.) in slides and worksheets, including in slide and worksheet sources, is also licensed under MIT. Note that figures in slides may be pulled in from external sources and may be licensed under different terms. For such images, image credits are available in the slide notes, accessible via pressing the letter ‘p’.\n\n\n\n", - "last_modified": "2024-02-26T14:15:52-06:00" + "last_modified": "2024-02-26T16:10:12-06:00" } ], "collections": [] diff --git a/schedule.Rmd b/schedule.Rmd index daa26a7..9b06b7b 100644 --- a/schedule.Rmd +++ b/schedule.Rmd @@ -148,6 +148,12 @@ All homeworks are due by 11:00pm on the day they are due. Homeworks need to be s ### Homework 5 (due Mar 7, 2024) +

    Materials:

    + +- [R Markdown template](assignments/HW5.Rmd) +- [HTML](assignments/HW5.html) + + ### Homework 6 (due Apr 4, 2024) ### Homework 7 (due Apr 11, 2024) @@ -169,6 +175,15 @@ All projects are due by 11:00pm on the day they are due. Projects need to be sub ### Project 2 (due Mar 21, 2024) +

    Materials:

    + +- [Instructions](assignments/Project_2_instructions.html) +- [Project Template (Rmd)](assignments/Project_2.Rmd) +- [Project Template (HTML)](assignments/Project_2.html) +- [Grading rubric](assignments/Project_2_rubric.pdf) + +Please use the example and the solutions from Project 1 as examples for Project 2. + ### Project 3 (due Apr 18, 2024)