Regressione logaritmica in python (passo dopo passo)


La regressione logaritmica è un tipo di regressione utilizzato per modellare situazioni in cui la crescita o il declino accelerano rapidamente all’inizio e poi rallentano nel tempo.

Ad esempio, il grafico seguente mostra un esempio di decadimento logaritmico:

Per questo tipo di situazione, la relazione tra una variabile predittrice e una variabile di risposta potrebbe essere ben modellata utilizzando la regressione logaritmica.

L’equazione per un modello di regressione logaritmica assume la forma seguente:

y = a + b*ln(x)

Oro:

  • y: la variabile di risposta
  • x: la variabile predittiva
  • a, b: i coefficienti di regressione che descrivono la relazione tra x e y

Il seguente esempio passo passo mostra come eseguire la regressione logaritmica in Python.

Passaggio 1: creare i dati

Innanzitutto, creiamo dati falsi per due variabili: x e y :

 import numpy as np
x = np. arange (1, 16, 1)
y = np. array ([59, 50, 44, 38, 33, 28, 23, 20, 17, 15, 13, 12, 11, 10, 9.5])

Passaggio 2: visualizzare i dati

Successivamente, creiamo un rapido grafico a dispersione per visualizzare la relazione tra x e y :

 import matplotlib. pyplot as plt

plt. scatter (x,y)
plt. show () 

Dal grafico possiamo vedere che esiste un modello di decadimento logaritmico tra le due variabili. Il valore della variabile di risposta, y , inizialmente diminuisce rapidamente, quindi rallenta nel tempo.

Sembra quindi saggio adattare un’equazione di regressione logaritmica per descrivere la relazione tra le variabili.

Passaggio 3: adattare il modello di regressione logaritmica

Successivamente, utilizzeremo la funzione polyfit() per adattare un modello di regressione logaritmica, utilizzando il logaritmo naturale di x come variabile predittrice e y come variabile di risposta:

 #fit the model
fit = np. polyfit (np. log (x), y, 1)

#view the output of the model
print(fit)

[-20.19869943 63.06859979]

Possiamo utilizzare i coefficienti del risultato per scrivere la seguente equazione di regressione logaritmica aggiustata:

y = 63,0686 – 20,1987 * ln(x)

Possiamo utilizzare questa equazione per prevedere la variabile di risposta, y , in base al valore della variabile predittrice, x . Ad esempio, se x = 12, allora prevediamo che y sarebbe 12,87 :

y = 63,0686 – 20,1987 * ln(12) = 12,87

Bonus: sentiti libero di utilizzare questo calcolatore di regressione logaritmica online per calcolare automaticamente l’equazione di regressione logaritmica per un determinato predittore e variabile di risposta.

Risorse addizionali

Una guida completa alla regressione lineare in Python
Come eseguire la regressione esponenziale in Python
Come eseguire la regressione logistica in Python

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *