Tarea 4
Instrucciones
- La fecha de entrega es el 11 de octubre a las 05:00 pm
- La tarea debe ser escrita en el formato para reportes dinámicos Rmarkdown o quarto
- Debe entregar el archivo html generado del documento Rmarkdown/quarto por medio de mediación virtual (hay un enlace para someter la tarea). No envíe el archivo Rmd/qmd.
- El reporte debe utilizar secciones de código (“chunks”) separados para cada ejercicio y subtítulos para cada uno así como comentarios en texto
- El código de los bloques siempre debe ser visible (no use
echo = FALSE
) - El código dentro de los bloques de código debe estar documentado con comentarios (usando #)
- Debe usar R básico para la manipulación de datos
- Cada item tiene un valor de 5 puntos
Ejercicios
Cree una función llamada
num_vector
que reciba un vector y devuelva una lista que incluya:- la clase del vector (pista:
class()
) - el largo
- cuantos elementos faltantes (
NAs
) contiene
- la clase del vector (pista:
Los elementos de la lista deben tener los nombres clase
, largo
y faltantes
, respectivamente.
Evalue la función
num_vector
con el siguiente vector:c(1, 2, 3, NA, 5, 6, 7, 8, 9, 10)
Cree una función llamada
char_vector
que reciba un vector de caracteres y devuelva una lista con tres elementos:- el número de elementos únicos (categorías únicas) en el vector (pista:
length(unique(x))
) - el número de observaciones por categoría (pista:
table(x)
) - el nombre de la categoría más frecuente (pista:
names(which.max(table(x)))
)
- el número de elementos únicos (categorías únicas) en el vector (pista:
Los elementos de la lista deben tener nombres.
Evalue la función
char_vector
con el siguiente vector:c("a", "b", "a", "b", "b", "c", "b")
Cree una función llamada
check_vector
que reciba un vector. Si el vector es numérico debe aplicar la funciónnum_vector
y si es de caracteres debe aplicar la funciónchar_vector
. Si el vector no es ni numérico ni de caracteres, la función debe imprimir un mensaje (print()
) indicando “x no es numérico ni categórico” (pista:is.numeric()
yis.character()
).Evalue la función
check_vector
con los siguientes 3 vectores (uno a la vez):c("a", "b", "a", "b", "b", "c", NA, "b")
c(1, 2, 3, NA, 5, 6, 7, 8, 9, 10)
c(FALSE, TRUE)