Do not change anything in the following chunk

You will be working on olympic_gymnasts dataset. Do not change the code below:

olympics <- readr::read_csv('https://raw.githubusercontent.com/rfordatascience/tidytuesday/master/data/2021/2021-07-27/olympics.csv')

olympic_gymnasts <- olympics %>% 
  filter(!is.na(age)) %>%             # only keep athletes with known age
  filter(sport == "Gymnastics") %>%   # keep only gymnasts
  mutate(
    medalist = case_when(             # add column for success in medaling
      is.na(medal) ~ FALSE,           # NA values go to FALSE
      !is.na(medal) ~ TRUE            # non-NA values (Gold, Silver, Bronze) go to TRUE
    )
  )

More information about the dataset can be found at

https://github.com/rfordatascience/tidytuesday/blob/master/data/2021/2021-07-27/readme.md

Question 1: Create a subset dataset with the following columns only: name, sex, age, team, year and medalist. Call it df.

df <- olympic_gymnasts |> select(name, sex, age, team, year, medalist)
df
## # A tibble: 25,528 × 6
##    name                    sex     age team     year medalist
##    <chr>                   <chr> <dbl> <chr>   <dbl> <lgl>   
##  1 Paavo Johannes Aaltonen M        28 Finland  1948 TRUE    
##  2 Paavo Johannes Aaltonen M        28 Finland  1948 TRUE    
##  3 Paavo Johannes Aaltonen M        28 Finland  1948 FALSE   
##  4 Paavo Johannes Aaltonen M        28 Finland  1948 TRUE    
##  5 Paavo Johannes Aaltonen M        28 Finland  1948 FALSE   
##  6 Paavo Johannes Aaltonen M        28 Finland  1948 FALSE   
##  7 Paavo Johannes Aaltonen M        28 Finland  1948 FALSE   
##  8 Paavo Johannes Aaltonen M        28 Finland  1948 TRUE    
##  9 Paavo Johannes Aaltonen M        32 Finland  1952 FALSE   
## 10 Paavo Johannes Aaltonen M        32 Finland  1952 TRUE    
## # ℹ 25,518 more rows

Question 2: From df create df2 that only have year of 2008 2012, and 2016

df2 <- df |> filter(year %in% c(2008, 2012, 2016))
df2
## # A tibble: 2,703 × 6
##    name              sex     age team     year medalist
##    <chr>             <chr> <dbl> <chr>   <dbl> <lgl>   
##  1 Nstor Abad Sanjun M        23 Spain    2016 FALSE   
##  2 Nstor Abad Sanjun M        23 Spain    2016 FALSE   
##  3 Nstor Abad Sanjun M        23 Spain    2016 FALSE   
##  4 Nstor Abad Sanjun M        23 Spain    2016 FALSE   
##  5 Nstor Abad Sanjun M        23 Spain    2016 FALSE   
##  6 Nstor Abad Sanjun M        23 Spain    2016 FALSE   
##  7 Katja Abel        F        25 Germany  2008 FALSE   
##  8 Katja Abel        F        25 Germany  2008 FALSE   
##  9 Katja Abel        F        25 Germany  2008 FALSE   
## 10 Katja Abel        F        25 Germany  2008 FALSE   
## # ℹ 2,693 more rows

Question 3 Group by these three years (2008,2012, and 2016) and summarize the mean of the age in each group.

df2 |> group_by(year) |> summarize(mean(age))
## # A tibble: 3 × 2
##    year `mean(age)`
##   <dbl>       <dbl>
## 1  2008        21.6
## 2  2012        21.9
## 3  2016        22.2

Question 4 Use olympic_gymnasts dataset, group by year, and find the mean of the age for each year, call this dataset oly_year. (optional after creating the dataset, find the minimum average age)

oly_year <- olympic_gymnasts |> group_by(year) |> summarise(mean(age))
oly_year
## # A tibble: 29 × 2
##     year `mean(age)`
##    <dbl>       <dbl>
##  1  1896        24.3
##  2  1900        22.2
##  3  1904        25.1
##  4  1906        24.7
##  5  1908        23.2
##  6  1912        24.2
##  7  1920        26.7
##  8  1924        27.6
##  9  1928        25.6
## 10  1932        23.9
## # ℹ 19 more rows
# finds the minimum average age
min(oly_year)
## [1] 19.86606

Question 5 This question is open ended. Create a question that requires you to use at least two verbs. Create a code that answers your question. Then below the chunk, reflect on your question choice and coding procedure

# Your R code here

# Question: How many medals did each country/team win?
team_medals_won <- olympic_gymnasts |> 
  select(team, medalist) |> 
  filter(medalist == TRUE) |> 
  count(team)

team_medals_won
## # A tibble: 42 × 2
##    team                            n
##    <chr>                       <int>
##  1 Austria                         2
##  2 Belarus                         4
##  3 Belgium                        19
##  4 Brazil                          4
##  5 Bulgaria                       10
##  6 Canada                          1
##  7 Central Turnverein, Chicago     4
##  8 China                         109
##  9 Croatia                         1
## 10 Czechoslovakia                 78
## # ℹ 32 more rows

Discussion: Enter your discussion of results here. I chose the question “How many medals did each country win?” since I knew it would involve filtering and having some sort of subset of the original dataset. In order to do this I chose use the select() function to create a subset using the column names “team” and “medalist”. “Team” was used so that we could identify the countries that won those medals and “Medalist” was used becasue we could identify whether a country won a medal or not. Afterwards I filtered the subset by if the team got a medal so having the condition medalist == TRUE would filter out the medalist that were not TRUE. Then I used count() on the “team” column to see how many medals each country won.