Regressão logarítmica em python (passo a passo)
A regressão logarítmica é um tipo de regressão usada para modelar situações em que o crescimento ou declínio acelera rapidamente no início e depois diminui com o tempo.
Por exemplo, o gráfico a seguir mostra um exemplo de decaimento logarítmico:
Para este tipo de situação, a relação entre uma variável preditora e uma variável resposta poderia ser bem modelada utilizando regressão logarítmica.
A equação para um modelo de regressão logarítmica assume a seguinte forma:
y = a + b*ln(x)
Ouro:
- y: a variável de resposta
- x: a variável preditiva
- a, b: os coeficientes de regressão que descrevem a relação entre x e y
O exemplo passo a passo a seguir mostra como realizar a regressão logarítmica em Python.
Etapa 1: crie os dados
Primeiro, vamos criar dados falsos para duas variáveis: 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])
Etapa 2: visualize os dados
A seguir, vamos criar um gráfico de dispersão rápido para visualizar a relação entre x e y :
import matplotlib. pyplot as plt plt. scatter (x,y) plt. show ()
No gráfico, podemos ver que existe um padrão de decaimento logarítmico entre as duas variáveis. O valor da variável de resposta, y , diminui rapidamente no início e depois diminui com o tempo.
Portanto, parece sensato ajustar uma equação de regressão logarítmica para descrever a relação entre as variáveis.
Etapa 3: Ajustar o modelo de regressão logarítmica
A seguir, usaremos a função polyfit() para ajustar um modelo de regressão logarítmica, usando o logaritmo natural de x como variável preditora e y como variável de resposta:
#fit the model fit = np. polyfit (np. log (x), y, 1) #view the output of the model print(fit) [-20.19869943 63.06859979]
Podemos usar os coeficientes do resultado para escrever a seguinte equação de regressão logarítmica ajustada:
y = 63,0686 – 20,1987 * ln(x)
Podemos usar esta equação para prever a variável de resposta, y , com base no valor da variável preditora, x . Por exemplo, se x = 12, então preveríamos que y seria 12,87 :
y = 63,0686 – 20,1987 * ln(12) = 12,87
Bônus: sinta-se à vontade para usar esta calculadora de regressão logarítmica online para calcular automaticamente a equação de regressão logarítmica para um determinado preditor e variável de resposta.
Recursos adicionais
Um guia completo para regressão linear em Python
Como realizar regressão exponencial em Python
Como realizar regressão logística em Python