1. Carga y Limpieza de Datos Carga nuevamente el
archivo Auto.csv en un objeto llamado datos.
Asegúrese de especificar que los signos de interrogación
(?) deben ser tratados como valores faltantes
(NA). Una vez cargado, utilice la función
na.omit() para eliminar las filas con datos faltantes y
utilice la función dim() para reportar cuántas
observaciones y variables quedaron en el conjunto de datos limpio.
#Cargamos los datos específicos para atender los valores faltantes por "?"
datos <- read.csv("~/Desktop/Auto(in).csv", header = TRUE, na.strings = "?")
datos <- na.omit(datos)
dim(datos)
## [1] 392 9
#Eliminamos las finlas con los datos faltantes
#Reportamos las observaciones y variables del conjunto limpio
2. Indexación y Subconjuntos Basándote en los datos
limpios del ejercicio anterior, crea una nueva matriz u objeto que
contenga solamente las columnas correspondientes a
mpg, horsepower y weight. De este
nuevo objeto, selecciona y guarda únicamente las primeras 20 filas.
Imprime el resultado en pantalla.
#Creamos una matriz nueva seleccionando columnas "mgp", "horsepower" y "weight"
subdatos <- datos[, c("mpg", "horsepower", "weight")]
#Seleccionamos únicamente las primeras 20 filas
subdatos_20 <- subdatos[1:20, ]
#Imprimimos el resultado en pantalla
subdatos_20
## mpg horsepower weight
## 1 18 130 3504
## 2 15 165 3693
## 3 18 150 3436
## 4 16 150 3433
## 5 17 140 3449
## 6 15 198 4341
## 7 14 220 4354
## 8 14 215 4312
## 9 14 225 4425
## 10 15 190 3850
## 11 15 170 3563
## 12 14 160 3609
## 13 15 150 3761
## 14 14 225 3086
## 15 24 95 2372
## 16 22 95 2833
## 17 18 97 2774
## 18 21 85 2587
## 19 27 88 2130
## 20 26 46 1835
3. Estadística Descriptiva Utilizando el conjunto de
datos completo y limpio: a) Calcula la media (mean) de la
variable weight.
Calcula la desviación estándar (sd) de la variable
mpg.
Calcula la varianza (var) de ambas variables para
observar las diferencias en magnitud y dispersión.
#Calculamos la media de la variable "weight"
mean(datos$weight)
## [1] 2977.584
#Calculamos la desviación estándar de la variable "mpg"
sd(datos$mpg)
## [1] 7.805007
#Calculamos la varianza de ambas variables
var(datos$weight)
## [1] 721484.7
var(datos$mpg)
## [1] 60.91814
4. Gráficos Personalizados Genera un gráfico de
dispersión (plot) para visualizar la relación entre la
potencia (horsepower) en el eje X y el rendimiento
(mpg) en el eje Y. El gráfico debe incluir:
Un título principal (main) que diga: “Relación
Potencia vs Consumo”.
Etiqueta del eje X (xlab): “Caballos de
Fuerza”.
Etiqueta del eje Y (ylab): “Millas por
Galón”.
plot(datos$horsepower, datos$mpg,
main = "Relación Potencia vs Consumo",
xlab = "Caballos de Fuerza",
ylab = "Millas por Galón")
5. Correlación y Simulación Primero, calcula la
correlación real entre horsepower y mpg
utilizando la función cor(). Segundo, realiza una
simulación para comparar:
Fija la semilla en 50 usando set.seed(50).
Genera un vector de variables normales aleatorias
(rnorm) del mismo tamaño que su conjunto de datos limpio
(recuerda usar dim() o nrow() para saber el
tamaño).
Calcula la correlación entre este vector de ruido aleatorio y la
variable mpg.
Pregunta: ¿Esperabas que esta correlación fuera alta o baja? ¿Por qué?
# Calculamos la correlación real
cor(datos$horsepower, datos$mpg)
## [1] -0.7784268
#Fijamos la semilla en 50
set.seed(50)
#Generamos vector de variables normales aleatorias
ruido <- rnorm(nrow(datos))
#Calculamos correlación
cor(ruido, datos$mpg)
## [1] -0.05537666
#Esperaba que la correlación fuera baja o cercana al cero, porque el vector que generamos con “rnorm()” es completamente aleatorio y no tiene ninguna relación real con la variable “mpg”. No existe un vínculo lógico o estructural entre ambos. Por eso, cualquier correlación que aparezca no refleja una relación verdadera pero simplemente es una coincidencia por el producto al azar.