IniziaInizia gratis

sapply() vs. lapply()

lapply() è ottimo, ma a volte potresti volere i dati di ritorno in una forma più comoda di una lista. Ad esempio, con il rapporto di Sharpe, non sarebbe meglio ottenere i valori restituiti in un vettore invece che in una lista? Le analisi successive sarebbero probabilmente più semplici!

Per questo, potresti considerare sapply() (simplify apply). Funziona esattamente come lapply(), ma prova a semplificare l'output quando possibile. La sintassi di base è la stessa, con alcuni argomenti aggiuntivi:

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

Questi argomenti opzionali aggiuntivi ti permettono di indicare se vuoi che sapply() provi a semplificare l'output e se vuoi che usi i nomi dell'oggetto nell'output.

Nell'esercizio ricalcolerai i rapporti di Sharpe usando sapply() per semplificare l'output. stock_return e la funzione sharpe sono a tua disposizione.

Questo esercizio fa parte del corso

R intermedio per la finanza

Visualizza il corso

Istruzioni dell'esercizio

  • Per prima cosa, usa lapply() su stock_return per ottenere di nuovo il rapporto di Sharpe.
  • Ora, usa sapply() su stock_return per vedere l'output semplificato del rapporto di Sharpe.
  • Usa sapply() su stock_return per ottenere il rapporto di Sharpe con gli argomenti simplify = FALSE e USE.NAMES = FALSE. Questo è equivalente a lapply()!

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# lapply() on stock_return
___

# sapply() on stock_return
___

# sapply() on stock_return with optional arguments
___
Modifica ed esegui il codice