data <- read.csv("../00_data/ramen_ratings.csv")
set.seed(1234)
data_small <- data %>%
select(country, brand, stars) %>%
sample_n(5)
data_small
## country brand stars
## 1 South Korea Ottogi 2.80
## 2 Taiwan Tung-I 3.00
## 3 Thailand MAMA 3.75
## 4 Singapore KOKA 5.00
## 5 Vietnam Vifon 2.00
data_wide <- data_small %>% pivot_wider(names_from = country, values_from = stars)
data_wide
## # A tibble: 5 × 6
## brand `South Korea` Taiwan Thailand Singapore Vietnam
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 Ottogi 2.8 NA NA NA NA
## 2 Tung-I NA 3 NA NA NA
## 3 MAMA NA NA 3.75 NA NA
## 4 KOKA NA NA NA 5 NA
## 5 Vifon NA NA NA NA 2
data_wide %>% pivot_longer('Thailand':'Taiwan', names_to = "country", values_to = "stars", values_drop_na = TRUE)
## # A tibble: 2 × 6
## brand `South Korea` Singapore Vietnam country stars
## <chr> <dbl> <dbl> <dbl> <chr> <dbl>
## 1 Tung-I NA NA NA Taiwan 3
## 2 MAMA NA NA NA Thailand 3.75
data_united <- data_small %>%
unite(col = "newName", country:stars, sep = "/", remove = TRUE)
data_united
## newName
## 1 South Korea/Ottogi/2.8
## 2 Taiwan/Tung-I/3
## 3 Thailand/MAMA/3.75
## 4 Singapore/KOKA/5
## 5 Vietnam/Vifon/2
data_united %>%
separate(col = newName, into = c("country", "stars"), sep = "/")
## Warning: Expected 2 pieces. Additional pieces discarded in 5 rows [1, 2, 3, 4,
## 5].
## country stars
## 1 South Korea Ottogi
## 2 Taiwan Tung-I
## 3 Thailand MAMA
## 4 Singapore KOKA
## 5 Vietnam Vifon