Czym są uporządkowane dane?

Przekształcanie danych z tidyr

Jeroen Boeye

Head of Machine Learning, Faktion

 

 

Szczęśliwe rodziny są do siebie podobne, każda nieszczęśliwa rodzina jest nieszczęśliwa na swój sposób.


Lew Tołstoj

 

Uporządkowane zbiory danych są do siebie podobne, każdy nieuporządkowany zbiór jest nieuporządkowany na swój sposób.


Hadley Wickham

Przekształcanie danych z tidyr

Dane prostokątne

 

Struktura

  • Kolumny
  • Wiersze
  • Komórki

 

Przykład tidy

Przekształcanie danych z tidyr

Uporządkowane dane, zmienne

 

Struktura

  • Kolumny przechowują zmienne
  • Wiersze
  • Komórki

 

Przykładowe zmienne tidy

Przekształcanie danych z tidyr

Uporządkowane dane, obserwacje

 

Struktura

  • Kolumny przechowują zmienne
  • Wiersze przechowują obserwacje
  • Komórki

 

Przykładowe obserwacje tidy

Przekształcanie danych z tidyr

Uporządkowane dane, wartości

 

Struktura

  • Kolumny przechowują zmienne
  • Wiersze przechowują obserwacje
  • Komórki przechowują wartości

 

Przykładowe wartości tidy

Przekształcanie danych z tidyr

Powtórzenie 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
Przekształcanie danych z tidyr

Powtórzenie 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
Przekształcanie danych z tidyr

Powtórzenie 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
Przekształcanie danych z tidyr

Powtórzenie 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
Przekształcanie danych z tidyr

Powtórzenie 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
Przekształcanie danych z tidyr

logo magrittr

1 magrittr.tidyverse.org
Przekształcanie danych z tidyr

 

logo dplyr

 

logo tidyr

1 www.tidyverse.org
Przekształcanie danych z tidyr

Wiele zmiennych w jednej kolumnie

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
Przekształcanie danych z tidyr

Rozdzielanie zmiennych na dwie kolumny

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
Przekształcanie danych z tidyr

Czas na ćwiczenia!

Przekształcanie danych z tidyr

Preparing Video For Download...