Ce sunt datele tidy?

Restructurarea datelor cu tidyr

Jeroen Boeye

Head of Machine Learning, Faktion

 

 

Familiile fericite seamănă toate între ele, dar fiecare familie nefericită este nefericită în felul ei.


Lev Tolstoi

 

Seturile de date tidy seamănă toate între ele, dar fiecare set de date dezordonat este dezordonat în felul lui.


Hadley Wickham

Restructurarea datelor cu tidyr

Date dreptunghiulare

 

Structură

  • Coloane
  • Rânduri
  • Celule

 

Exemplu tidy

Restructurarea datelor cu tidyr

Date tidy, variabile

 

Structură

  • Coloanele conțin variabile
  • Rânduri
  • Celule

 

Variabile exemplu tidy

Restructurarea datelor cu tidyr

Date tidy, observații

 

Structură

  • Coloanele conțin variabile
  • Rândurile conțin observații
  • Celule

 

Observații exemplu tidy

Restructurarea datelor cu tidyr

Date tidy, valori

 

Structură

  • Coloanele conțin variabile
  • Rândurile conțin observații
  • Celulele conțin valori

 

Valori exemplu tidy

Restructurarea datelor cu tidyr

Recapitulare dplyr

character_df
# A tibble: 4 x 3
  name           homeworld species
  <chr>          <chr>     <chr>  
1 Luke Skywalker Tatooine  Human  
2 R2-D2          Naboo     Droid  
3 Darth Vader    Tatooine  Human  
4 Obi-Wan Kenobi Stewjon   Human
Restructurarea datelor cu tidyr

Recapitulare dplyr: select()

character_df %>% 
  select(name, homeworld)
# A tibble: 4 x 2
  name           homeworld
  <chr>          <chr>    
1 Luke Skywalker Tatooine 
2 R2-D2          Naboo    
3 Darth Vader    Tatooine 
4 Obi-Wan Kenobi Stewjon
Restructurarea datelor cu tidyr

Recapitulare dplyr: filter()

character_df %>% 
  filter(homeworld == "Tatooine")
# A tibble: 2 x 3
  name           homeworld species
  <chr>          <chr>     <chr>  
1 Luke Skywalker Tatooine  Human  
2 Darth Vader    Tatooine  Human
Restructurarea datelor cu tidyr

Recapitulare dplyr: mutate()

character_df %>% 
  mutate(is_human = species == "Human")
# A tibble: 4 x 4
  name           homeworld species is_human
  <chr>          <chr>     <chr>   <lgl>   
1 Luke Skywalker Tatooine  Human   TRUE    
2 R2-D2          Naboo     Droid   FALSE   
3 Darth Vader    Tatooine  Human   TRUE    
4 Obi-Wan Kenobi Stewjon   Human   TRUE
Restructurarea datelor cu tidyr

Recapitulare dplyr: group_by() și summarize()

character_df %>% 
  group_by(homeworld) %>% 
  summarize(n = n())
# A tibble: 3 x 2
  homeworld     n
  <chr>     <int>
1 Naboo         1
2 Stewjon       1
3 Tatooine      2
Restructurarea datelor cu tidyr

logo magrittr

1 magrittr.tidyverse.org
Restructurarea datelor cu tidyr

 

logo dplyr

 

logo tidyr

1 www.tidyverse.org
Restructurarea datelor cu tidyr

Mai multe variabile într-o singură coloană

population_df
# A tibble: 4 x 2
  country                 population
  <chr>                        <dbl>
1 Brazil, South America        210. 
2 Nepal, Asia                   28.1
3 Senegal, Africa               15.8
4 Australia, Oceania            25.0
Restructurarea datelor cu tidyr

Separarea variabilelor în două coloane

population_df %>% 
  separate(country, into = c("country", "continent"), sep = ", ")
# A tibble: 4 x 3
  country   continent      population
  <chr>     <chr>               <dbl>
1 Brazil    South America       210. 
2 Nepal     Asia                 28.1
3 Senegal   Africa               15.8
4 Australia Oceania              25.0
Restructurarea datelor cu tidyr

Să exersăm!

Restructurarea datelor cu tidyr

Preparing Video For Download...