load("//IMSS-EDS/Users/esteban.degetau/OneDrive - INSTITUTO TECNOLOGICO AUTONOMO DE MEXICO/Documentos/My courses/Statistical tools in R/assignments/data/ingresos.rda")Introducción a la ciencia de datos con R
Tarea 1
La Tarea 1 debe entregarse el jueves 27 de marzo. La entrega consiste en un archivo PDF que incluya las respuestas a las preguntas planteadas, así como el código .qmd que generó las respuestas. Para descargar el archivo .qmd, haz clic aquí.
Escribe todas tus respuestas en la sección de respuestas al final de este archivo.
Escribe tu nombre en el campo author del YAML.
1 Preguntas
1.1 Outliers: Datos atípicos
Un problema común en el análisis de datos es cómo tratar con datos atípicos: aquellos valores que difieren significativamente del resto de los datos. Dos soluciones estándar son:
- Truncar los datos: eliminando los datos atípicos
- Winsorizar los datos: reemplazando los datos atípicos por un valor cercano a los valores no atípicos.
El siguiente código carga un vector llamado ingresos. Cada valor representa el ingreso en pesos para un hogar mexicano, de la encuesta de ingreso y gastos de los hogares (ENIGH) del 2022.
¿Cuál es la lognitud (length) del vector
ingresos? (esto nos dirá el número de observaciones en los datos de la ENIGH.) ¿Cuál es la media, la mediana y la desviación estándar deingresos?Escribe una función para truncar un vector. Esta función debe tener dos argumentos: (1) el vector y (2) el percentil al que se truncará el vector por arriba y por abajo. La función deberá hacer lo siguiente:
Calcular los percentiles inferior y superior para truncar los datos.
Crear un subconjunto del vector original, incluyendo solo las observaciones que se encuentren entre los percentiles inferior y superior.
Regresar el subconjunto.
Pista: La función
sort()regresa un vector ordenado de menor a mayor. Para extraer múltiples elementos de un vector, puedes usar la notaciónvector[1:10]para extraer los elementos 1 al 10.Escribe una función para winsorizar un vector. Esta función deberá tener dos argumentos: (1) el vector y (2) el percentil al que se winzorizará el vector por arriba y por abajo. La función deberá hacer lo siguiente:
Calcular los percentiles inferior y superior para winzorizar los datos.
Crear un nuevo vector, reemplazando cualquier observación que sea menor al percentil inferior por el percentil inferior y cualquier observación que sea mayor al percentil superior por el percentil superior.
Regresar el vector con los valores atípicos reemplazados.
Pista: Puedes usar la notación
vector[vector < 10] <- 10para reemplazar los valores menores a 10 por 10.Crea un vector truncado del vector
ingresos, que trunque el 1% de los datos por arriba y por abajo. ¿Cuál es la longitud, media, mediana y desviación estándar del vector truncado? Compara el histograma deingresoscon el histograma del vector truncado.Crea un vector winzorizado del vector
ingresos, que winzorice el 1% de los datos por arriba y por abajo. ¿Cuál es la longitud, media, mediana y desviación estándar del vector winzorizado? Compara el histograma deingresoscon el histograma del vector winzorizado.Discute tus resultados.
2 Respuestas
2.1 Outliers
- El vector ingresos tiene una lognitud de:
length(ingresos)[1] 397182