sapply() vs. lapply()
lapply()도 훌륭하지만, 반환값을 리스트보다 보기 좋은 형태로 받고 싶을 때가 있어요. 예를 들어, 샤프 지수를 계산할 때 결과가 리스트가 아니라 벡터로 나오면 더 좋겠죠? 그러면 이후 분석이 더 쉬워질 거예요!
이럴 때는 sapply()(simplify apply)를 고려해 볼 수 있어요. 동작은 lapply()와 동일하지만, 가능하면 결과를 더 단순한 형태로 바꿔 줍니다. 기본 구문은 몇 가지 선택 인수가 추가된 것을 제외하면 같아요:
sapply(X, FUN, ..., simplify = TRUE, USE.NAMES = TRUE)
이 추가 선택 인수로 sapply()가 출력을 단순화할지, 그리고 결과에 원본 객체의 이름을 사용할지 지정할 수 있어요.
이번 연습에서는 sapply()를 사용해 샤프 지수 계산 결과를 더 간단한 형태로 다시 구해 보겠습니다. stock_return과 sharpe 함수가 준비되어 있어요.
이 연습은 강의의 일부입니다
금융을 위한 R 중급
연습 안내
- 먼저,
lapply()를stock_return에 적용해 샤프 지수를 다시 구하세요. - 이제,
sapply()를stock_return에 적용해 단순화된 샤프 지수 출력을 확인하세요. sapply()를stock_return에 적용할 때simplify = FALSE와USE.NAMES = FALSE인수를 사용해 샤프 지수를 구하세요. 이는lapply()와 동일해요!
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# lapply() on stock_return
___
# sapply() on stock_return
___
# sapply() on stock_return with optional arguments
___