시작하기무료로 시작하기

map2()로 여러 입력을 사용해 데이터 시뮬레이션하기

map() 함수는 하나의 리스트를 반복 처리할 때는 훌륭하지만, 종종 두 개의 리스트를 동시에 순회해야 할 때가 있습니다. 이때 map2()를 사용합니다. map()이 리스트를 .x 인수로 받는 반면, map2()는 두 개의 리스트를 .x.y라는 두 인수로 받습니다.

map2()를 시험해 보기 위해 간단한 데이터셋을 만들어 보겠습니다. 하나는 숫자 리스트, 다른 하나는 문자열 리스트입니다. 이 두 리스트를 결합해 일부 시뮬레이션 데이터를 생성할 거예요.

이 연습은 강의의 일부입니다

purrr로 배우는 함수형 프로그래밍 기초

강의 보기

연습 안내

  • 각각을 별도의 원소로 하여 1부터 3까지 값을 담는 means 리스트를 만드세요.
  • "north", "west", "east"를 담은 sites 리스트를 만드세요.
  • sitesmeans 리스트를 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
코드 편집 및 실행