library(tidyverse)
## -- Attaching packages --------------------------------------- tidyverse 1.3.1 --
## v ggplot2 3.3.5 v purrr 0.3.4
## v tibble 3.1.4 v dplyr 1.0.7
## v tidyr 1.1.3 v stringr 1.4.0
## v readr 2.0.1 v forcats 0.5.1
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
library(haven)
css2019 <- read_dta("D:/course/CSS/CSS2019/css2019.dta")
#View(css2019)
css2019 <- css2019 %>% mutate(age = 2019-a1_1_a)
#css2019$age
css2019<-
css2019 %>%
mutate(agegroup = case_when(
age <= 40 ~ "40岁以下",
age >40 & age <= 60 ~ "40-60",
age > 60 ~ "60以上"
))
#css2019$agegroup
library(ggridges)
css2019 %>%
ggplot(aes(x = d4b1_6, y = agegroup, fill = agegroup)) +
geom_density_ridges()
## Don't know how to automatically pick scale for object of type haven_labelled/vctrs_vctr/double. Defaulting to continuous.
## Picking joint bandwidth of 0.235
## Warning: Removed 3545 rows containing non-finite values (stat_density_ridges).

table(css2019$d4a)
##
## 1 2
## 6738 3544