ComenzarEmpieza gratis

lapply() en un data frame

Si, en lugar de una lista, tuvieras un data frame con rendimientos de acciones, ¿podrías seguir usando lapply()? ¡Sí! Quizá sorprenda, pero los data frames son en realidad listas por debajo, y una llamada a lapply() aplicaría la función a cada columna del data frame.

df
  a b
1 1 4
2 2 6

class(df)
[1] "data.frame"

lapply(df, FUN = sum)
$a
[1] 3

$b
[1] 10

lapply() sumó cada columna del data frame, pero mantiene su convención de devolver siempre una lista. Se te ha proporcionado un data frame de rendimientos diarios de acciones en decimales llamado stock_return.

Este ejercicio forma parte del curso

R intermedio para finanzas

Ver curso

Instrucciones del ejercicio

  • Imprime stock_return para ver el data frame.
  • Usa lapply() para obtener la media (mean) de cada columna.
  • Crea una función para el ratio de Sharpe. Debe tomar la media de los rendimientos, restarle el tipo libre de riesgo (.03%) y luego dividir entre la desviación estándar de los rendimientos.
  • Usa lapply() para calcular el ratio de Sharpe de cada columna.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# Print stock_return
___

# lapply to get the average returns
___

# Sharpe ratio
sharpe <- function(returns) {
    (___ - .0003) / ___
}

# lapply to get the sharpe ratio
___
Editar y ejecutar código