잘못된 인자로 오류 발생시키기
사용자가 함수에 잘못된 입력을 제공하면, 가장 좋은 대응은 오류를 발생시켜 이를 알려 주는 것입니다. 다음 두 가지 규칙을 따르세요.
- 문제가 있다고 판단되는 즉시(보통 함수 시작 부분에서) 오류를 발생시키세요.
- 오류 메시지는 쉽게 이해할 수 있도록 작성하세요.
입력을 검사하고 실패할 때 오류를 던지려면 assertive의 assert_*() 함수를 사용할 수 있습니다.
이 연습은 강의의 일부입니다
R 함수 작성 입문
연습 안내
calc_harmonic_mean()본문에x가 숫자형인지 확인하는 구문을 한 줄 추가하세요.calc_harmonic_mean()에 문자형 인자를 전달하면 어떻게 되는지 살펴보세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
calc_harmonic_mean <- function(x, na.rm = FALSE) {
# Assert that x is numeric
___
x %>%
get_reciprocal() %>%
mean(na.rm = na.rm) %>%
get_reciprocal()
}
# See what happens when you pass it strings
calc_harmonic_mean(std_and_poor500$sector)