Introducción a ISLR (An Introduction to Statistical Learning) en Python

Introducción a ISLR (An Introduction to Statistical Learning) en Python

Resumen

An Introduction to Statistical Learning (ISLR) es un libro de texto popular que cubre una amplia gama de temas de aprendizaje estadístico. En este tutorial, veremos cómo implementar los métodos y análisis presentados en ISLR en Python.

Requisitos previos

Para seguir este tutorial, necesitarás tener conocimientos básicos de Python y estadística.

Materiales

  • El libro «An Introduction to Statistical Learning» de Gareth James, Daniela Witten, Trevor Hastie y Robert Tibshirani
  • El paquete de Python ISLR

Instalación

Para instalar el paquete ISLR, ejecuta los siguientes comandos en la terminal:

pip install islr

Ejemplos

A continuación, veremos algunos ejemplos de cómo implementar los métodos y análisis presentados en ISLR en Python.

Regresión lineal

La regresión lineal es un método para predecir un valor continuo en función de una serie de variables predictoras.

Para implementar la regresión lineal en Python, podemos usar el módulo sklearn.linear_model.

Python
import numpy as np
import pandas as pd
from sklearn.linear_model import LinearRegression

# Cargamos los datos
data = pd.read_csv("data.csv")

# Separamos las variables predictoras y la variable objetivo
X = data.drop("y", axis=1)
y = data["y"]

# Entrenamos el modelo
model = LinearRegression().fit(X, y)

# Predecimos los valores de y
y_pred = model.predict(X)

# Evaluamos el modelo
print(model.score(X, y))

Este código cargará los datos de un archivo CSV llamado «data.csv». Las variables predictoras se almacenarán en el DataFrame X y la variable objetivo se almacenará en la serie y.

A continuación, usaremos el método fit() para entrenar el modelo. El método fit() toma dos argumentos: las variables predictoras y la variable objetivo.

Una vez que el modelo esté entrenado, podemos usar el método predict() para predecir los valores de y. El método predict() toma un argumento: las variables predictoras.

Finalmente, podemos evaluar el modelo usando el método score(). El método score() toma dos argumentos: las variables predictoras y la variable objetivo reales.

Clasificación

La clasificación es un método para predecir una variable categórica en función de una serie de variables predictoras.

Para implementar la clasificación en Python, podemos usar el módulo sklearn.model_selection.

Python
import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression

# Cargamos los datos
data = pd.read_csv("data.csv")

# Separamos los datos en conjuntos de entrenamiento y prueba
X_train, X_test, y_train, y_test = train_test_split(
    data.drop("y", axis=1),
    data["y"],
    test_size=0.25,
    stratify=data["y"],
)

# Entrenamos el modelo
model = LogisticRegression().fit(X_train, y_train)

# Evaluamos el modelo
print(model.score(X_test, y_test))

Este código cargará los datos de un archivo CSV llamado «data.csv». Las variables predictoras se almacenarán en el DataFrame X y la variable objetivo se almacenará en la serie y.

A continuación, usaremos el método train_test_split() para separar los datos en conjuntos de entrenamiento y prueba. El método train_test_split() toma seis argumentos: los datos, la variable objetivo, el tamaño del conjunto de prueba, si los datos están estratificados, el número de repeticiones y el método de aleatorización.

Una vez que los datos estén separados, usaremos el método fit() para entrenar el modelo. El método fit() toma dos argumentos: las variables predictoras y la variable objetivo.

Finalmente, podemos evaluar el modelo usando el método score(). El método score() toma dos argumentos: los datos de prueba y la variable objetivo real.

Conclusión

En este tutorial, hemos visto cómo implementar los métodos y análisis presentados en ISLR en Python. Para obtener más información, consulta el libro «An Introduction