Derivarea variabilelor din anteturi complexe de coloane

Restructurarea datelor cu tidyr

Jeroen Boeye

Head of Machine Learning, Faktion

Separarea anteturilor de coloane în variabile

 

Două variabile în anteturi

 

Două variabile în anteturi remediat

Restructurarea datelor cu tidyr

Combinații multiple de variabile în anteturile coloanelor

who_df
# A tibble: 181 x 5
   country             female_pct.obese male_pct.obese female_life.exp male_life.exp
   <chr>                          <dbl>          <dbl>           <dbl>         <dbl>
 1 Afghanistan                      7.6            3.2            64.5          61  
 2 Albania                         21.8           21.6            78.6          74.3
 3 Algeria                         34.9           19.9            77.4          75.4
 4 Angola                          12.1            4              64.9          60.3
 5 Antigua and Barbuda             25.9           11.6            77.5          72.5
 6 Argentina                       29             27.3            80.3          73.5
 7 Armenia                         23             17.1            78.1          71.2
 8 Australia                       28.4           29.6            84.8          81
Restructurarea datelor cu tidyr

Combinații multiple de variabile în anteturile coloanelor

 

Anteturi mixte de variabile

 

Anteturi mixte de variabile remediat

Restructurarea datelor cu tidyr

Numele special .value

who_df %>% 
  # Exemplu nume coloană intrare = male_obesity.pct
  pivot_longer(-country,
               names_to = c("sex", ".value"),
               names_sep = "_")
# A tibble: 362 x 4
   country             sex    pct.obese life.exp
   <chr>               <chr>      <dbl>    <dbl>
 1 Afghanistan         female       7.6     64.5
 2 Afghanistan         male         3.2     61  
 3 Albania             female      21.8     78.6
Restructurarea datelor cu tidyr

Recapitulare pivot_longer()

Variabile ca anteturi

Două variabile în anteturi

Anteturi mixte de variabile

Variabile ca anteturi tidy

Două variabile în anteturi remediat

Anteturi mixte de variabile remediat

Restructurarea datelor cu tidyr

Numărarea inversă a datelor

nuke_df
# A tibble: 8 x 2
  country          n_bombs
  <chr>              <int>
1 Pakistan               2
2 India                  6
3 North Korea            6
4 United Kingdom        21
5 China                 45
6 France               200
7 Russian Federation   726
8 United States       1150
Restructurarea datelor cu tidyr

Funcția uncount()

nuke_df %>% 
  uncount(n_bombs)
# A tibble: 2,156 x 1
   country    
   <chr>      
 1 Pakistan   
 2 Pakistan   
 3 India      
 4 India      
 5 India      
 6 India      
# ... with 2,150 more rows
Restructurarea datelor cu tidyr

Funcția uncount()

nuke_df %>% 
  uncount(2)
# A tibble: 16 x 2
   country            n_bombs
   <chr>                <int>
 1 Pakistan                 2
 2 Pakistan                 2
 3 India                    6
 4 India                    6
 5 North Korea              6
 6 North Korea              6
# ... with 10 more rows
Restructurarea datelor cu tidyr

Funcția uncount()

nuke_df %>% 
  uncount(n_bombs, .id = "bomb_id")
# A tibble: 2,156 x 2
   country     bomb_id
   <chr>         <int>
 1 Pakistan          1
 2 Pakistan          2
 3 India             1
 4 India             2
 5 India             3
 6 India             4
# ... with 2,150 more rows
Restructurarea datelor cu tidyr

Să exersăm!

Restructurarea datelor cu tidyr

Preparing Video For Download...