시작하기무료로 시작하기

vapply 사용하기 (2)

지금까지는 모든 것이 계획대로 진행될 때 vapply()sapply()와 동일하게 동작한다는 것을 살펴봤습니다. 그렇다면 그렇지 않은 경우에는 어떻게 될까요?

강의에서 Filip이 설명했듯이, 적용하려는 함수 FUN의 출력 구조가 FUN.VALUE에 지정한 템플릿과 일치하지 않는 경우가 있습니다. 이때 vapply()는 예상 출력과 실제 출력 간의 불일치를 알려주는 오류를 발생시킵니다.

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

중급 R

강의 보기

연습 안내

  • 미리 로드된 코드를 살펴보고 실행해 보세요. 아무것도 변경하지 않았다면 오류가 발생할 것입니다. vapply()basics()의 반환값으로 여전히 길이 3의 벡터를 기대하고 있기 때문입니다. 오류 메시지를 통해 문제의 원인을 확인할 수 있습니다.
  • vapply() 명령어를 수정하여 오류를 해결해 보세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# temp is already available in the workspace

# Definition of the basics() function
basics <- function(x) {
  c(min = min(x), mean = mean(x), median = median(x), max = max(x))
}

# Fix the error:
vapply(temp, basics, numeric(3))
코드 편집 및 실행