L'anàlisi de regressió és una tècnica estadística utilitzada per modelar i analitzar la relació entre una variable dependent i una o més variables independents. Aquesta tècnica permet predir el valor de la variable dependent basant-se en els valors de les variables independents.

Objectius de l'Anàlisi de Regressió

  • Comprendre la relació entre variables: Identificar com una o més variables independents afecten la variable dependent.
  • Predicció: Utilitzar el model de regressió per predir valors futurs de la variable dependent.
  • Control de factors: Aïllar l'efecte d'una variable independent mentre es controlen altres variables.

Tipus de Regressió

  1. Regressió Lineal Simple: Modela la relació entre una variable dependent i una sola variable independent.
  2. Regressió Lineal Múltiple: Modela la relació entre una variable dependent i múltiples variables independents.
  3. Regressió Logística: Utilitzada quan la variable dependent és categòrica.
  4. Regressió Polinòmica: Modela relacions no lineals entre la variable dependent i les variables independents.

Regressió Lineal Simple

Fórmula Bàsica

La fórmula de la regressió lineal simple és: \[ Y = \beta_0 + \beta_1X + \epsilon \]

On:

  • \( Y \) és la variable dependent.
  • \( X \) és la variable independent.
  • \( \beta_0 \) és la intersecció (constant).
  • \( \beta_1 \) és la pendent (coeficient de regressió).
  • \( \epsilon \) és l'error residual.

Exemple Pràctic

Suposem que volem predir el pes d'una persona basant-nos en la seva alçada. Tenim les següents dades:

Alçada (cm) Pes (kg)
150 50
160 55
170 65
180 70
190 80

Podem utilitzar la regressió lineal per trobar la relació entre l'alçada i el pes.

Codi en Python

import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression

# Dades
alçada = np.array([150, 160, 170, 180, 190]).reshape(-1, 1)
pes = np.array([50, 55, 65, 70, 80])

# Crear el model de regressió lineal
model = LinearRegression()
model.fit(alçada, pes)

# Prediccions
pes_pred = model.predict(alçada)

# Visualització
plt.scatter(alçada, pes, color='blue', label='Dades Reals')
plt.plot(alçada, pes_pred, color='red', label='Línia de Regressió')
plt.xlabel('Alçada (cm)')
plt.ylabel('Pes (kg)')
plt.legend()
plt.show()

# Coeficients
print(f'Intersecció (β0): {model.intercept_}')
print(f'Pendent (β1): {model.coef_[0]}')

Explicació del Codi

  1. Importació de Llibreries: Importem les llibreries necessàries per a la regressió lineal i la visualització.
  2. Dades: Definim les dades d'alçada i pes.
  3. Model de Regressió: Creem un model de regressió lineal i l'ajustem a les dades.
  4. Prediccions: Utilitzem el model per predir els valors de pes basant-nos en les alçades.
  5. Visualització: Plotejem les dades reals i la línia de regressió.
  6. Coeficients: Imprimim els coeficients de la regressió (intersecció i pendent).

Exercici Pràctic

Exercici

Utilitza la regressió lineal per predir el preu d'una casa basant-te en la seva superfície. Utilitza les següents dades:

Superfície (m²) Preu (milers €)
50 150
60 160
70 180
80 200
90 220

Solució

import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression

# Dades
superficie = np.array([50, 60, 70, 80, 90]).reshape(-1, 1)
preu = np.array([150, 160, 180, 200, 220])

# Crear el model de regressió lineal
model = LinearRegression()
model.fit(superficie, preu)

# Prediccions
preu_pred = model.predict(superficie)

# Visualització
plt.scatter(superficie, preu, color='blue', label='Dades Reals')
plt.plot(superficie, preu_pred, color='red', label='Línia de Regressió')
plt.xlabel('Superfície (m²)')
plt.ylabel('Preu (milers €)')
plt.legend()
plt.show()

# Coeficients
print(f'Intersecció (β0): {model.intercept_}')
print(f'Pendent (β1): {model.coef_[0]}')

Explicació de la Solució

  1. Dades: Definim les dades de superfície i preu.
  2. Model de Regressió: Creem un model de regressió lineal i l'ajustem a les dades.
  3. Prediccions: Utilitzem el model per predir els valors de preu basant-nos en les superfícies.
  4. Visualització: Plotejem les dades reals i la línia de regressió.
  5. Coeficients: Imprimim els coeficients de la regressió (intersecció i pendent).

Errors Comuns i Consells

  • Multicolinealitat: En la regressió múltiple, assegura't que les variables independents no estiguin altament correlacionades entre elles.
  • Outliers: Els valors atípics poden distorsionar el model de regressió. Considera eliminar o tractar aquests valors.
  • Assumpcions del Model: Verifica que les assumpcions de la regressió lineal (linealitat, independència, homocedasticitat, normalitat dels errors) es compleixin.

Conclusió

L'anàlisi de regressió és una eina poderosa per comprendre i predir relacions entre variables. Amb la pràctica i la comprensió de les seves assumpcions i limitacions, es pot utilitzar eficaçment en una àmplia varietat de camps.

© Copyright 2024. Tots els drets reservats