Aplicar funciones que devuelven NULL
En todos los ejercicios anteriores, se suponía que las funciones aplicadas a vectores y listas devolvían un resultado significativo. Por ejemplo, la función tolower()
simplemente devuelve las cadenas con los caracteres en minúsculas. No siempre será así. Supón que quieres mostrar la estructura de cada elemento de una lista. Para ello puedes utilizar la función str()
, que devuelve NULL
:
lapply(list(1, "a", TRUE), str)
Esta llamada devuelve una lista, del mismo tamaño que la lista de entrada, que contiene todos los valores de NULL
. Por otra parte, al llamar a
str(TRUE)
se imprime solo la estructura del elemento lógico en la consola, no NULL
. Esto se debe a que str()
utiliza invisible()
de forma subyacente, lo que devuelve una copia invisible del valor de devolución, NULL
en este caso. Esto impide que se imprima cuando el resultado de str()
no está asignado.
¿Qué devolverá el fragmento de código que se indica a continuación (split_low
ya está disponible en el área de trabajo)? Intenta pensar el resultado antes de ejecutarlo en la consola.
lapply(split_low, function(x) {
if (nchar(x[1]) > 5) {
return(NULL)
} else {
return(x[2])
}
})
Este ejercicio forma parte del curso
R intermedio
Ejercicio interactivo práctico
Pon en práctica la teoría con uno de nuestros ejercicios interactivos
