choiseongkuan / R

1 stars 2 forks source link

For issue #5

Open choiseongkuan opened 1 year ago

choiseongkuan commented 1 year ago

那四题编程题我发了

choiseongkuan commented 1 year ago

没有

choiseongkuan commented 1 year ago

第二大题第一小题

library(tidyverse)
data(gss_cat)
gss_cat_clean <- gss_cat %>% 
  filter(!is.na(age)) %>% 
  mutate(age_group = case_when(
    age <= 45 ~ "youth",
    age <= 69 ~ "middle_aged",
    TRUE ~ "old_people"
  )) %>% 
  select(-age) %>% 
  mutate(age_group = factor(age_group, levels = c("youth", "middle_aged", "old_people")))
table(gss_cat_clean$age_group)
螢幕截圖 2023-06-08 下午8 38 07
choiseongkuan commented 1 year ago

第二大题第二小题

library(tidyverse)  # 注意这里调了一个包
gss_cat_clean %>% 
  group_by(year, race, age_group) %>% 
  summarize(n = n()) %>% 
  pivot_wider(names_from = age_group, values_from = n, values_fill = 0) %>% 
  mutate(youth_prop = youth / (youth + middle_aged + old_people)) %>%
  pivot_longer(
    cols = c("youth_prop"), 
    names_to = "proportion_type", 
    values_to = "proportion_value"
  )