library(tidyverse)
library(modelr)
Utilizando la base de datos diamonds
, visualiza la
relación entre los siguientes pares de variables:
cut
y price
color
y price
clarity
y price
¿Encuentras un patrón atÃpico?
Pista: el color de menor calidad para un diamante es J (ligeramente amarillo), la peor claridad es I1 y el peor corte es Fair.
Ajusta un modelo lineal donde la variable predictora sea
carat
(el peso de los diamantes ) y la variable dependiente
sea price
. Obtén el valor de los coeficientes e
interprétalos. ¿Qué conclusión extraes?
Visualiza las predicciones del modelo anterior, asà como los residuos. Extrae conclusiones.
Crea un nuevo conjunto de datos llamado diamonds2
donde
elimines todos los diamantes de carat mayor que 2.5. Añade dos variables
a este conjunto de datos llamandas lcarat
y
lprice
que correspondan respectivamente a logaritmo en base
dos de carat
y price
.
Utilizando los datos creados en el ejercicio anterior, ajusta un
modelo lineal donde la variable predictora sea lcarat
y la
variable dependiente sea lprice
. Obtén el valor de los
coeficientes e interprétalos. Según este modelo, que le sucede al precio
de un diamante si multiplico por dos su carat
.
Visualiza las predicciones del modelo anterior, asà como los residuos. Extrae conclusiones. ¿Se ajusta este modelo mejor que el anterior a los datos?
Utilizando la base de datos diamonds2
, visualiza la
relación entre las siguientes variables y el residuo calculado en el
ejercicio anterior. * cut
* color
*
clarity
¿Qué conclusión extraes?
Explora los datos sim3
de modelr
. ¿De qué
tipo son las variables x1
y x2
? ¿Y la
y
? Ajusta un modelo lineal con variable respuesta
y
y predictores x1
y x2
y
visualiza sus predicciones.
Interpreta los coeficientes de este modelo.
Con los datos anteriores, ajusta el siguiente modelo
\[ y = \beta_0 + \beta_1 x_1 + \beta_2 x_2 + \beta_{12} x_1 x_2 \]
en R este modelo se corresponde con la fórmula
y ~ x1 * x2
. Visualiza las predicciones del modelo, e
interpreta sus coeficientes.
Hasta ahora hemos trabajado únicamente con modelos en los que la variable respuesta es cuantitativa. Existen modelos análogos que se pueden utilizar para casos en los que la variable respuesta es cualitativa. Uno de estos modelos es la regresión logÃstica. No explicaremos el funcionamiento de la regresión logÃstica, pero vamos a aprender cómo se ajusta una regresión logÃstica en R.
Si nuestra variable respuesta y
es cualitativa y
tenemos, por ejemplo, dos predictores x1
y x2
,
ajustamos una regresión logÃstica como sigue:
log_reg <- glm( y ~ x1 + x2, data = data, family = binomial(link='logit'))
Vamos a utilizar una regresión logÃstica para intentar predecir si los pasajeros del titanic sobrevivieron o no, utilizando como variables predictores por ejemplo el sexo, la edad, la clase de su ticket, etc.
Primero instala la librerÃa titanic
y carga los
datos:
library(titanic)
data("titanic_train")
Selecciona las variables Survived, Age, Sex, Embarked, SibSp, Parch,
Fare, Pclass. Convierte a variables de tipo factor aquellas que
consideres que son factores. Además añade una variable id que indique el
número de fila. Guarda esto en un nuevo data frame llamado
titanic
.
Pista: usa ?titanic_train
para ver qué
significa cada variable.
Crea dos conjuntos de datos llamados train
y
test
. El primero, debe contener observaciones (filas)
seleccionadas al azar del dataframe titanic del ejercicio anterior. Su
número de filas ha de ser el 70% del número de filas de titanic. El
segundo conjunto de datos ha de contener todas las observaciones que
están en el conjunto de datos titanic pero que no están en
train
.
Pista: usa la función sample_frac()
Ajusta un modelo de regresión logÃstica usando los datos
train
donde la variable respuesta sea Survived
y la variable predictora sea Sex
.
La predicción de una regresión logÃstica es una probabilidad correspondiente a la probabilidad de que la variable respuesta tome valor 1 (en nuestro caso que el pasajero correspondiente sobreviva) según el modelo.
Calcula las predicciones del modelo anterior sobre los datos
test
. Construye una nueva variable que tome valor 1 si la
probabilidad predicha es mayor o igual a 0.5 y cero en caso
contrario.
Finalmente, calcula el procentaje de aciertos comparando la variable recién creada y la variable Survived.
Intenta mejorar el model anterior añadiendo más variables. ¿Qué variable crees que tiene más poder predictivo?