Aan de slagGa gratis aan de slag

sapply() vs. lapply()

lapply() is top, maar soms wil je de geretourneerde data liever in een mooier formaat dan een lijst. Met de sharpe-ratio zou het bijvoorbeeld handig zijn als de uitkomsten in een vector staan in plaats van in een lijst. Verdere analyse wordt dan waarschijnlijk makkelijker!

Hiervoor kun je sapply() overwegen, oftewel simplify apply. Het werkt precies zoals lapply(), maar probeert de output te vereenvoudigen als dat kan. De basis-syntaxis is hetzelfde, met een paar extra argumenten:

sapply(X, FUN, ..., simplify = TRUE, USE.NAMES = TRUE)

Met deze extra optionele argumenten kun je aangeven of sapply() de output moet proberen te vereenvoudigen en of het de namen van het object in de output moet gebruiken.

In deze oefening bereken je de sharpe-ratio’s opnieuw met sapply() om de output te vereenvoudigen. stock_return en de functie sharpe zijn voor je beschikbaar.

Deze oefening maakt deel uit van de cursus

R voor finance voor gevorderden

Cursus bekijken

Oefeninstructies

  • Gebruik eerst lapply() op stock_return om de sharpe-ratio opnieuw te krijgen.
  • Gebruik nu sapply() op stock_return om de vereenvoudigde output van de sharpe-ratio te zien.
  • Gebruik sapply() op stock_return om de sharpe-ratio te krijgen met de argumenten simplify = FALSE en USE.NAMES = FALSE. Dit is gelijk aan lapply()!

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# lapply() on stock_return
___

# sapply() on stock_return
___

# sapply() on stock_return with optional arguments
___
Code bewerken en uitvoeren