Ánh xạ dữ liệu của bạn
Kết hợp với mutate(), bạn có thể dùng map() để nối kết quả tính toán vào một data frame. Vì hàm map() luôn trả về một vector các list, bạn phải dùng unnest() để trích xuất thông tin này thành một vector số.
Tại đây bạn sẽ khám phá tính năng này bằng cách tính dân số trung bình của mỗi quốc gia trong bộ dữ liệu gapminder.
Bài tập này là một phần của khóa học
Machine Learning trong tidyverse
Hướng dẫn bài tập
- Dùng
map()để áp dụng hàmmean()nhằm tính dân số trung bình cho mỗi quốc gia và nối cột list mới tênmean_popbằngmutate(). - Khám phá 6 hàng đầu tiên của
pop_nested. - Dùng
unnest()để chuyển listmean_popthành một cột số và lưu lại thành data framepop_mean. - Khám phá
pop_meanbằnghead().
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Calculate the mean population for each country
pop_nested <- gap_nested %>%
mutate(mean_pop = map(___, ~mean(.x$___)))
# Take a look at pop_nested
head(___)
# Extract the mean_pop value by using unnest
pop_mean <- pop_nested %>%
unnest(___)
# Take a look at pop_mean
head(___)