Historia dwóch zmiennych

Wprowadzenie do regresji z użyciem statsmodels w Pythonie

Maarten Van den Broeck

Content Developer at DataCamp

Dane szwedzkiego ubezpieczenia komunikacyjnego

  • Każdy wiersz reprezentuje jeden region geograficzny Szwecji.
  • Zbiór zawiera 63 wiersze.
n_claims total_payment_sek
108 392.5
19 46.2
13 15.7
124 422.2
40 119.4
... ...
Wprowadzenie do regresji z użyciem statsmodels w Pythonie

Statystyki opisowe

import pandas as pd
print(swedish_motor_insurance.mean())
n_claims             22.904762
total_payment_sek    98.187302
dtype: float64
print(swedish_motor_insurance['n_claims'].corr(swedish_motor_insurance['total_payment_sek']))
0.9128782350234068
Wprowadzenie do regresji z użyciem statsmodels w Pythonie

Czym jest regresja?

  • Modele statystyczne służące do badania zależności między zmienną odpowiedzi a zmiennymi objaśniającymi.
  • Na podstawie wartości zmiennych objaśniających można przewidywać wartości zmiennej odpowiedzi.
n_claims total_payment_sek
108 3925
19 462
13 157
124 4222
40 1194
200 ???
Wprowadzenie do regresji z użyciem statsmodels w Pythonie

Terminologia

Zmienna odpowiedzi (inaczej: zmienna zależna)

Zmienna, którą chcemy przewidzieć.

Zmienne objaśniające (inaczej: zmienne niezależne)

Zmienne wyjaśniające, jak zmienia się zmienna odpowiedzi.

Wprowadzenie do regresji z użyciem statsmodels w Pythonie

Regresja liniowa i logistyczna

Regresja liniowa

  • Zmienna odpowiedzi jest liczbowa.

Regresja logistyczna

  • Zmienna odpowiedzi jest logiczna.

Prosta regresja liniowa/logistyczna

  • Istnieje tylko jedna zmienna objaśniająca.
Wprowadzenie do regresji z użyciem statsmodels w Pythonie

Wizualizacja par zmiennych

import matplotlib.pyplot as plt
import seaborn as sns

sns.scatterplot(x="n_claims",
                y="total_payment_sek",    
                data=swedish_motor_insurance)

plt.show()

Wykres punktowy całkowitej płatności w zależności od liczby roszczeń. Płatność rośnie wraz z liczbą roszczeń.

Wprowadzenie do regresji z użyciem statsmodels w Pythonie

Dodawanie liniowej linii trendu

sns.regplot(x="n_claims",
            y="total_payment_sek",
            data=swedish_motor_insurance,
            ci=None)

Ten sam wykres punktowy co poprzednio, teraz z dodatkowo naniesioną linią trendu wyznaczoną metodą regresji liniowej. Dobrze dopasowuje się do danych.

Wprowadzenie do regresji z użyciem statsmodels w Pythonie

Struktura kursu

Rozdział 1

Wizualizacja i dopasowywanie modeli regresji liniowej.

Rozdział 2

Przewidywanie na podstawie modeli regresji liniowej i interpretacja współczynników.

Rozdział 3

Ocena jakości modelu regresji liniowej.

Rozdział 4

To samo, ale z modelami regresji logistycznej.

Wprowadzenie do regresji z użyciem statsmodels w Pythonie

Pakiety Pythona do regresji

statsmodels

  • Zoptymalizowany pod kątem analizy (używany w tym kursie)

scikit-learn

  • Zoptymalizowany pod kątem prognozowania (używany w innych kursach DataCamp)
Wprowadzenie do regresji z użyciem statsmodels w Pythonie

Czas na ćwiczenia!

Wprowadzenie do regresji z użyciem statsmodels w Pythonie

Preparing Video For Download...