Två variablers historia

Introduktion till regression med statsmodels i Python

Maarten Van den Broeck

Content Developer at DataCamp

Svenska motorförsäkringsdata

  • Varje rad representerar ett geografiskt område i Sverige.
  • Det finns 63 rader.
n_claims total_payment_sek
108 392.5
19 46.2
13 15.7
124 422.2
40 119.4
... ...
Introduktion till regression med statsmodels i Python

Deskriptiv statistik

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
Introduktion till regression med statsmodels i Python

Vad är regression?

  • Statistiska modeller för att utforska sambandet mellan en responsvariabel och förklarande variabler.
  • Med hjälp av förklarande variablers värden kan du förutsäga responsvariabelns värden.
n_claims total_payment_sek
108 3925
19 462
13 157
124 4222
40 1194
200 ???
Introduktion till regression med statsmodels i Python

Terminologi

Responsvariabel (a.k.a. beroende variabel)

Den variabel du vill förutsäga.

Förklarande variabler (a.k.a. oberoende variabler)

De variabler som förklarar hur responsvariabeln förändras.

Introduktion till regression med statsmodels i Python

Linjär regression och logistisk regression

Linjär regression

  • Responsvariabeln är numerisk.

Logistisk regression

  • Responsvariabeln är logisk.

Enkel linjär/logistisk regression

  • Det finns bara en förklarande variabel.
Introduktion till regression med statsmodels i Python

Visualisera variabelpar

import matplotlib.pyplot as plt
import seaborn as sns

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

plt.show()

Ett spridningsdiagram över total utbetalning mot antal skadeanmälningar. Utbetalningen ökar i takt med att antalet skadeanmälningar ökar.

Introduktion till regression med statsmodels i Python

Lägga till en linjär trendlinje

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

Samma spridningsdiagram som tidigare, nu med en trendlinje beräknad via linjär regression. Den passar data väl.

Introduktion till regression med statsmodels i Python

Kursens upplägg

Kapitel 1

Visualisera och anpassa linjära regressionsmodeller.

Kapitel 2

Göra förutsägelser med linjära regressionsmodeller och förstå modellkoefficienter.

Kapitel 3

Utvärdera kvaliteten hos den linjära regressionsmodellen.

Kapitel 4

Samma sak, men med logistiska regressionsmodeller.

Introduktion till regression med statsmodels i Python

Python-paket för regression

statsmodels

  • Optimerad för analys och insikt (fokus i den här kursen)

scikit-learn

  • Optimerad för förutsägelse (fokus i andra DataCamp-kurser)
Introduktion till regression med statsmodels i Python

Nu kör vi en övning!

Introduktion till regression med statsmodels i Python

Preparing Video For Download...