ComenzarEmpieza gratis

Cuando no se puede simplificar

Para uso interactivo, sapply() va genial. Intenta adivinar el tipo de salida para poder simplificar, y normalmente funciona bien. Sin embargo, sapply() no es una opción segura cuando escribes funciones. Si sapply() no puede simplificar tu salida, por defecto devolverá una lista igual que lapply(). Esto puede ser peligroso y romper funciones personalizadas si las escribiste esperando que sapply() devolviera un vector simplificado.

Veamos un ejercicio usando una lista con información sobre el desplome del mercado de 2008.

Este ejercicio forma parte del curso

R intermedio para finanzas

Ver curso

Instrucciones del ejercicio

La lista market_crash ya está creada para ti.

  • Usa sapply() para obtener la class() de cada elemento de market_crash.


Se ha creado una nueva lista, market_crash2. ¡La diferencia está en cómo se creó la fecha!

  • Usa lapply() para obtener la class() de cada elemento de market_crash2.
  • Usa sapply() para obtener la class() de cada elemento de market_crash2.


date en market_crash2 tiene múltiples clases. ¿Por qué sapply() no pudo simplificar esto?

Ejercicio interactivo práctico

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

# Market crash with as.Date()
market_crash <- list(dow_jones_drop = 777.68, 
                     date = as.Date("2008-09-28"))
                     
# Find the classes with sapply()
___

# Market crash with as.POSIXct()
market_crash2 <- list(dow_jones_drop = 777.68, 
                      date = as.POSIXct("2008-09-28"))

# Find the classes with lapply()
___

# Find the classes with sapply()
___
Editar y ejecutar código