sapply() a lapply()
lapply() to świetne narzędzie, ale czasem wygodniej jest otrzymać wyniki w czytelniejszej formie niż lista. Na przykład w przypadku wskaźnika Sharpe'a – czy nie byłoby praktyczniej, gdyby wyniki trafiły do wektora zamiast listy? Dalsza analiza byłaby wtedy o wiele prostsza!
Warto wtedy sięgnąć po sapply(), czyli simplify apply. Działa dokładnie tak jak lapply(), ale stara się uprościć wynik, jeśli to możliwe. Składnia jest taka sama, z kilkoma dodatkowymi argumentami:
sapply(X, FUN, ..., simplify = TRUE, USE.NAMES = TRUE)
Te opcjonalne argumenty pozwalają określić, czy sapply() ma próbować uprościć wynik oraz czy ma używać nazw obiektu w danych wyjściowych.
W tym ćwiczeniu ponownie obliczysz wskaźniki Sharpe'a, korzystając z sapply(), aby uprościć wynik. Dostępne są obiekt stock_return oraz funkcja sharpe.
To ćwiczenie jest częścią kursu
R dla finansów – poziom średnio zaawansowany
Instrukcje do ćwiczenia
- Na początek użyj
lapply()nastock_return, aby ponownie obliczyć wskaźnik Sharpe'a. - Teraz użyj
sapply()nastock_returni sprawdź, jak wygląda uproszczony wynik. - Wywołaj
sapply()nastock_returnz argumentamisimplify = FALSEiUSE.NAMES = FALSE. To rozwiązanie jest równoważne użyciulapply()!
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# lapply() on stock_return
___
# sapply() on stock_return
___
# sapply() on stock_return with optional arguments
___