Regressão logarítmica em r (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 R.

Etapa 1: crie os dados

Primeiro, vamos criar dados falsos para duas variáveis: x e y :

 x=1:15

y=c(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 :

 plot(x, y) 

No gráfico, podemos ver que existe um padrão claro 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 lm() 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
model <- lm(y ~ log (x))

#view the output of the model
summary(model)

Call:
lm(formula = y ~ log(x))

Residuals:
   Min 1Q Median 3Q Max 
-4.069 -1.313 -0.260 1.127 3.122 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept) 63.0686 1.4090 44.76 1.25e-15 ***
log(x) -20.1987 0.7019 -28.78 3.70e-13 ***
---
Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 2.054 on 13 degrees of freedom
Multiple R-squared: 0.9845, Adjusted R-squared: 0.9834 
F-statistic: 828.2 on 1 and 13 DF, p-value: 3.702e-13

O valor F geral do modelo é 828,2 e o valor p correspondente é extremamente baixo (3.702e-13), indicando que o modelo como um todo é útil.

Usando os coeficientes da tabela de saída, podemos ver que a 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.

Passo 4: Visualize o modelo de regressão logarítmica

Finalmente, podemos criar um gráfico rápido para visualizar quão bem o modelo de regressão logarítmica se ajusta aos dados:

 #plot x vs. y
plot(x, y)

#define x-values to use for regression line
x=seq(from= 1 , to= 15 , length. out = 1000 )

#use the model to predict the y-values based on the x-values
y=predict(model,newdata=list(x=seq(from= 1 ,to= 15 ,length. out = 1000 )),
          interval=" confidence ")

#add the fitted regression line to the plot (lwd specifies the width of the line)
matlines(x,y, lwd= 2 )

Regressão logarítmica em R

Podemos ver que o modelo de regressão logarítmica faz um bom trabalho ao ajustar este conjunto de dados específico.

Recursos adicionais

Como realizar regressão linear simples em R
Como realizar regressão linear múltipla em R
Como realizar regressão quadrática em R
Como realizar regressão exponencial em R
Como realizar regressão polinomial em R

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *