1. 학습
  2. /
  3. 강의
  4. /
  5. 효율적인 R 코드 작성

Connected

연습 문제

parApply로 전환하기

parallel 패키지를 사용해 코드를 병렬로 실행하려면 기본 워크플로는 세 단계로 구성돼요.

  1. makeCluster()로 클러스터를 만듭니다.
  2. 작업을 수행합니다.
  3. stopCluster()로 클러스터를 중지합니다.

가장 간단한 방법은 makeCluster()에 숫자를 전달하는 거예요. 이렇게 하면 기본 유형의 클러스터가 생성되고, 해당 개수만큼의 코어에서 코드가 실행됩니다.

객체 dd는 열이 10개, 행이 100개인 데이터 프레임입니다. 다음 코드는 apply()를 사용해 각 열의 중앙값을 계산해요:

apply(dd, 2, median)

이를 병렬로 실행하려면 parApply()로 apply()를 바꾸면 됩니다. 이 함수의 인자는 동일하지만, 일반적인 apply() 인자들 앞에 클러스터 인자를 추가로 받습니다.

지침

100 XP
  • detectCores() 함수를 사용해 사용 가능한 코어 수를 콘솔에 출력하세요.
  • makeCluster()를 사용해 코어 수를 2로 설정한 클러스터를 생성하고, 결과를 cl에 저장하세요.
  • 위의 apply() 함수를 parApply()로 다시 작성하세요. 첫 번째 인자는 이제 클러스터 객체 cl이어야 합니다.
  • stopCluster()로 클러스터를 중지하세요.