Porozumění kvalitativním proměnným

Kategorická data v Tidyverse

Emily Robinson

Data Scientist

Úvod do datové sady

  • Datová sada: průzkum Kaggle Data Science 2017
# A tibble: 16,716 x 228
   GenderSelect        Country    Age EmploymentStatus     
   <chr>               <chr>    <int> <chr>                
 1 Non-binary, gender... NA          NA Employed full-time   
 2 Female              United ...    30 Not employed, but lo...
 3 Male                Canada      28 Not employed, but lo…
 4 Male                United ...    56 Independent contract...
 5 Male                Taiwan      38 Employed full-time   
 6 Male                Brazil      46 Employed full-time   
 7 Male                United ...    35 Employed full-time   
 8 Female              India       22 Employed full-time   
 9 Female              Austral...    43 Employed full-time   
10 Male                Russia      33 Employed full-time   
# ... with 16,706 more rows, and 224 more variables:
#   StudentStatus <chr>, LearningDataScience <chr>,
#   CodeWriter <chr>, CareerSwitcher <chr>, ...
Kategorická data v Tidyverse

Převod znaků na faktory

is.character(multipleChoiceResponses$LearningDataScienceTime)
TRUE
multipleChoiceResponses %>%
    mutate(across(where(is.character, as.factor))
# A tibble: 16,716 x 228
   GenderSelect        Country    Age EmploymentStatus     
   <fct>               <fct>    <int> <fct>                
 1 Non-binary, gender  NA          NA Employed full-time   
 2 Female              United ...    30 Not employed, but lo...
 3 Male                Canada      28 Not employed, but lo...
 4 Male                United ...    56 Independent contract...
# ... with 16,710 more rows, and 224 more variables:
#   StudentStatus <fct>, LearningDataScience <fct>,
#   CodeWriter <fct>, CareerSwitcher <fct>, ...
Kategorická data v Tidyverse

Shrnutí faktorů

  • Počet kategorií (nlevels())
nlevels(multipleChoiceResponses$LearningDataScienceTime)
6
  • Seznam kategorií (levels())
levels(multipleChoiceResponses$LearningDataScienceTime)
[1] "< 1 year"    "1-2 years"   "10-15 years" "15+ years"  
[5] "3-5 years"   "5-10 years"
Kategorická data v Tidyverse

Shrnutí faktorů

  • Počet úrovní pro každou faktorovou proměnnou
multipleChoiceResponses %>%
  summarize(across(where(is.factor), nlevels)
# A tibble: 1 x 215
  GenderSelect Country EmploymentStatus StudentStatus
         <int>   <int>            <int>         <int>
1            4      52                7             2
# ... with 211 more variables: LearningDataScience <int>,
#   CodeWriter <int>, CareerSwitcher <int>,
Kategorická data v Tidyverse

everything()

multipleChoiceResponses %>%
  select(everything())
multipleChoiceResponses %>%
  pivot_longer(everything())
Kategorická data v Tidyverse

Pojďme procvičovat!

Kategorická data v Tidyverse

Preparing Video For Download...