map2()로 여러 입력을 사용해 데이터 시뮬레이션하기
map() 함수는 하나의 리스트를 반복 처리할 때는 훌륭하지만, 종종 두 개의 리스트를 동시에 순회해야 할 때가 있습니다. 이때 map2()를 사용합니다. map()이 리스트를 .x 인수로 받는 반면, map2()는 두 개의 리스트를 .x와 .y라는 두 인수로 받습니다.
map2()를 시험해 보기 위해 간단한 데이터셋을 만들어 보겠습니다. 하나는 숫자 리스트, 다른 하나는 문자열 리스트입니다. 이 두 리스트를 결합해 일부 시뮬레이션 데이터를 생성할 거예요.
이 연습은 강의의 일부입니다
purrr로 배우는 함수형 프로그래밍 기초
연습 안내
- 각각을 별도의 원소로 하여 1부터 3까지 값을 담는
means리스트를 만드세요. - "north", "west", "east"를 담은
sites리스트를 만드세요. sites와means리스트를map2()로 순회해 두 개의 열을 가진 데이터 프레임을 만드세요.- 첫 번째 열은
sites, 두 번째 열은means리스트의mean을 사용해rnorm()으로 생성합니다.
- 첫 번째 열은
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# 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