Esta práctica tiene como propósito aplicar en R los conceptos de manipulación y preparación de datos, tipos de datos, objetos, coerción, secuencias, operadores lógicos y acceso a componentes de objetos.
.Rmd.Al finalizar esta práctica usted será capaz de:
as.* e
inspección con funciones is.*.data.frame.Suponga que usted trabaja con una base de datos inicial de solicitudes académicas y necesita limpiarla, transformarla y prepararla para un análisis posterior. La información contiene variables numéricas, lógicas y de texto, así como algunos datos faltantes y formatos que deben corregirse.
Cree las siguientes variables:
nombre_curso con el texto
"Tópicos Avanzados"cantidad_estudiantes con el valor 18promedio_inicial con el valor 72.5curso_activo con el valor lógico TRUE# Escriba aquí su código
Explique brevemente la diferencia entre una variable de tipo carácter, una numérica y una lógica.
Respuesta:
Use funciones de ayuda para investigar la función
mean.
# Escriba aquí su código
¿Qué diferencia observa entre help(mean) y
?mean?
Respuesta:
Aplique a las variables de la sección 1 las funciones:
class()typeof()mode()# Escriba aquí su código
Complete la siguiente tabla con sus resultados.
| Variable | class() | typeof() | mode() |
|---|---|---|---|
| nombre_curso | |||
| cantidad_estudiantes | |||
| promedio_inicial | |||
| curso_activo |
Cree un vector numérico llamado notas con los siguientes
valores:
78, 85, 90, 67, 74, 88, 92, 59
# Escriba aquí su código
Calcule:
# Escriba aquí su código
Genere:
"A" cinco veces.# Escriba aquí su código
¿Para qué podría ser útil la función seq() en una tarea
de análisis de datos?
Respuesta:
Construya una matriz de 3 filas y 4 columnas con los números del 1 al 12.
# Escriba aquí su código
Obtenga:
# Escriba aquí su código
Cree una lista llamada registro que contenga:
# Escriba aquí su código
Acceda a:
# Escriba aquí su código
Cree el siguiente data.frame llamado
solicitudes:
id: 1 al 10estudiante:
"Ana", "Luis", "María", "José", "Sofía", "Carlos", "Elena", "Pablo", "Marta", "Diego"nota:
85, 67, 90, NA, 72, 88, 91, 64, 79, 70avance:
"alto", "medio", "alto", "bajo", "medio", "alto", "alto", "bajo", "medio", "medio"entrego:
TRUE, TRUE, TRUE, FALSE, TRUE, TRUE, TRUE, FALSE, TRUE, TRUE# Escriba aquí su código
Explore la estructura del objeto con:
str()summary()names()dim()# Escriba aquí su código
Obtenga:
nota.entrego == FALSE.estudiante y avance.# Escriba aquí su código
Compruebe si las siguientes columnas son del tipo esperado:
nota → numéricaavance → carácter o factorentrego → lógicoUse funciones is.*.
# Escriba aquí su código
Cree un vector llamado valores_texto con:
"10", "25", "30", "40", "50"
Conviértalo a numérico y calcule su promedio.
# Escriba aquí su código
Ahora cree otro vector:
"10", "25", "hola", "40"
Intente convertirlo a numérico y explique qué sucede.
# Escriba aquí su código
¿Qué riesgo existe al coercionar datos sin revisar previamente su contenido?
Respuesta:
Identifique cuántos NA existen en la columna
nota.
# Escriba aquí su código
Realice dos alternativas:
data.frame eliminando la fila con
NA.NA por el promedio de
las notas disponibles.# Escriba aquí su código
¿Cuál de las dos estrategias considera más adecuada para este caso y por qué?
Respuesta:
Genere subconjuntos con:
avance == "alto"."bajo".# Escriba aquí su código
Ordene el data.frame de mayor a menor por
nota.
# Escriba aquí su código
¿Qué utilidad tiene ordenar los datos antes de analizarlos o visualizarlos?
Respuesta:
Agregue una nueva columna llamada estado con la
siguiente regla:
"Aprobado" si nota >= 70"Reprobado" si nota < 70"Sin dato" si la nota es NA# Escriba aquí su código
Agregue otra columna llamada riesgo con la siguiente
lógica:
"Alto" si nota < 70 o
entrego == FALSE"Medio" si nota está entre 70 y 79"Bajo" si nota >= 80 y
entrego == TRUE# Escriba aquí su código
Obtenga:
notaavanceriesgo# Escriba aquí su código
Redacte un breve análisis de 5 a 8 líneas respondiendo:
estado y
riesgo?Respuesta:
Construya un nuevo data.frame llamado
proyectos con al menos 8 registros y las siguientes
columnas:
id_proyectoresponsablepresupuestoduracion_mesesestadoprioridadLuego realice las siguientes tareas:
categoria_presupuesto con valores:
"Bajo""Medio""Alto"# Escriba aquí su código
Explique qué pasos de preparación y manipulación de datos aplicó en este ejercicio integrador.
Respuesta:
El estudiante debe entregar:
.RmdHTML o PDF)data.frame