¡Vamos a a hacer un poco de predicción básica!

 Nuestra tarea es hacer nuestro primer modelo de predicción. Trabajaremos con el siguiente dataset (wage) que contiene el salario y alguna información general para los trabajadores en la región del Atlántico medio de los Estados Unidos.

Alguna data nos dice que puede haber una relación entre la edad de un trabajador y su salario. Los trabajadores mayores tienden a tener más experiencia en promedio que sus contrapartes más jóvenes, por lo tanto, podría esperar una tendencia creciente en el salario a medida que los trabajadores envejecen. Así que vamos a crear un modelo de regresión lineal usando lm (): lm_wage. Este modelo predice el salario de un trabajador basado solo en la edad del trabajador.

Con este modelo lineal lm_wage, que se construye con datos que contienen información sobre la edad de los trabajadores y su salario correspondiente, podemos predecir el salario de un trabajador dada la edad de ese trabajador. Por ejemplo, suponga que desea predecir el salario de un trabajador de 60 años. Puede usar la función predic () para esto. Esta función genérica toma un modelo como primer argumento. El segundo argumento debería ser algunas observaciones invisibles como un marco de datos. predic () es capaz de predecir resultados para estas observaciones.


Antes de empezar:

  • Hice un post muy bonito donde explico hasta con dibujos que es y como funciona la regresión lineal y su implementación el python. Lo puedes encontrar en este link 
  • Este ejercicio lo voy a realizar con R (porque estoy intentando aprender un poco de este lenguaje)
  • Este es un ejercicio que desarrolló DataCamp Team para el curso de Machine Learning, así que voy a seguir sus lineamientos de paso a paso para completar el ejercicio

Ahora si empecemos: 

Lo que hay que hacer: 

  1. Miremos el código que construye lm_wage, que modela el salario por la variable edad.
lm_wage <- lm(wage ~ age, data = Wage)

2. Vea cómo se crea el marco de datos invisible con una sola columna, edad, que contiene un solo valor, 60.

unseen <- data.frame(age = 60)

3. Predecir el salario promedio a los 60 años usando predic (): debe pasar los argumentos lm_wage y unseen. Imprima el resultado de la función (no lo asigne a una variable).

predict(lm_wage, unseen)

El resultado 

124.1413

Basado en el modelo lineal que se estimó a partir del conjunto de datos de Wage, se predijo que el salario promedio para un trabajador de 60 años sería de alrededor de 124 USD por día. 

Un poquito de explicación:

  • En R, la función lm () o “modelo lineal” se puede utilizar para crear un modelo de regresión simple. La función lm () acepta varios argumentos.
  • Para la regresión lineal simple, esto es “YVAR ~ XVAR” donde YVAR es la variable dependiente o predicha, y XVAR es la variable independiente o predictiva
  • La función predict () requiere un objeto modelo, como un modelo lineal, como primer argumento. El segundo argumento debe ser un conjunto de datos al que le gustaría aplicar su modelo.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *