Імітація даних з кількома вхідними даними за допомогою map2()
Функція map() чудово підходить, коли потрібно ітеруватися лише по одному списку, однак часто доводиться працювати з двома списками одночасно. Тут у пригоді стає map2(). Якщо map() приймає список як аргумент .x, то map2() приймає два списки як аргументи: .x і .y.
Щоб випробувати map2(), ви створите простий набір даних: один список чисел і один список рядків. Ви поєднаєте ці два списки та згенеруєте імітовані дані.
Ця вправа є частиною курсу
Основи функціонального програмування з purrr
Інструкції до вправи
- Створіть список
means, що містить значення від 1 до 3, кожне окремим елементом. - Створіть список
sitesзі значеннями "north", "west" та "east". - Застосуйте
map2()до списківsitesіmeans, щоб створити датафрейм із двома стовпцями.- Перший стовпець —
sites; другий стовпець згенеруйте за допомогоюrnorm()з параметромmeanзі спискуmeans.
- Перший стовпець —
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# List of 1, 2 and 3
means <- list(___)
# Create sites list
sites <- list(___)
# Map over two arguments: sites and means
list_of_files_map2 <- map2(___, ___, ~___(sites = ___,
a = rnorm(mean = ___, n = 200, sd = (5/2))))
list_of_files_map2