Adattare una regressione lineare

Introduzione alla regressione con statsmodels in Python

Maarten Van den Broeck

Content Developer at DataCamp

Le rette sono definite da due cose

Intercetta

Il valore di $y$ quando $x$ è zero.

Pendenza

Di quanto aumenta $y$ se aumenti $x$ di uno.

Equazione

$y = \text{intercetta} + \text{pendenza} * x$

Introduzione alla regressione con statsmodels in Python

Stimare l'intercetta

Grafico a dispersione di pagamento totale vs numero di sinistri con linea di tendenza lineare. Il pagamento aumenta linearmente all'aumentare dei sinistri.

Introduzione alla regressione con statsmodels in Python

Stimare l'intercetta

Grafico a dispersione di pagamento totale vs numero di sinistri, annotato con il punto in cui la linea di tendenza incrocia l'asse y.

Introduzione alla regressione con statsmodels in Python

Stimare l'intercetta

Grafico a dispersione di pagamento totale vs numero di sinistri, annotato con il valore quando il numero di sinistri è zero.

Introduzione alla regressione con statsmodels in Python

Stimare la pendenza

Grafico a dispersione di pagamento totale vs numero di sinistri, annotato con due punti sulla linea di tendenza. Un punto è a 1500 corone e 40 sinistri; un altro è a 3500 corone e 100 sinistri.

Introduzione alla regressione con statsmodels in Python

Stimare la pendenza

Grafico a dispersione di pagamento totale vs numero di sinistri, annotato con la differenza di pagamento tra due punti. 3500 corone meno 1500 corone = 2000 corone.

Introduzione alla regressione con statsmodels in Python

Stimare la pendenza

Grafico a dispersione di pagamento totale vs numero di sinistri, annotato con la differenza nel numero di sinistri tra i due punti. 100 sinistri meno 40 sinistri = 60 sinistri.

Introduzione alla regressione con statsmodels in Python

Stimare la pendenza

Grafico a dispersione di pagamento totale vs numero di sinistri, annotato con il rapporto tra differenza di pagamento e differenza nel numero di sinistri. 2000 diviso 60 è circa 33.

Introduzione alla regressione con statsmodels in Python

Eseguire un modello

from statsmodels.formula.api import ols

mdl_payment_vs_claims = ols("total_payment_sek ~ n_claims", data=swedish_motor_insurance)
mdl_payment_vs_claims = mdl_payment_vs_claims.fit()
print(mdl_payment_vs_claims.params)
Intercept    19.994486
n_claims      3.413824
dtype: float64
Introduzione alla regressione con statsmodels in Python

Interpretare i coefficienti del modello

Intercept    19.994486
n_claims      3.413824
dtype: float64

Equazione

$\text{total\_payment\_sek} = 19.99 + 3.41 * \text{n\_claims}$

Introduzione alla regressione con statsmodels in Python

Passiamo alla pratica !

Introduzione alla regressione con statsmodels in Python

Preparing Video For Download...