R - Regressão de Poisson

A regressão de Poisson envolve modelos de regressão nos quais a variável de resposta está na forma de contagens e não de números fracionários. Por exemplo, a contagem do número de nascimentos ou de vitórias em uma série de partidas de futebol. Além disso, os valores das variáveis ​​de resposta seguem uma distribuição de Poisson.

A equação matemática geral para regressão de Poisson é -

log(y) = a + b1x1 + b2x2 + bnxn.....

A seguir está a descrição dos parâmetros usados ​​-

  • y é a variável de resposta.

  • a e b são os coeficientes numéricos.

  • x é a variável preditora.

A função usada para criar o modelo de regressão de Poisson é o glm() função.

Sintaxe

A sintaxe básica para glm() função na regressão de Poisson é -

glm(formula,data,family)

A seguir está a descrição dos parâmetros usados ​​nas funções acima -

  • formula é o símbolo que apresenta a relação entre as variáveis.

  • data é o conjunto de dados que fornece os valores dessas variáveis.

  • familyé o objeto R para especificar os detalhes do modelo. Seu valor é 'Poisson' para Regressão Logística.

Exemplo

Temos o conjunto de dados embutido "quebra de urdidura" que descreve o efeito do tipo de lã (A ou B) e tensão (baixa, média ou alta) no número de quebras de urdidura por tear. Vamos considerar "quebras" como a variável de resposta que é uma contagem do número de quebras. O "tipo" e a "tensão" da lã são considerados variáveis ​​de previsão.

Input Data

input <- warpbreaks
print(head(input))

Quando executamos o código acima, ele produz o seguinte resultado -

breaks   wool  tension
1     26       A     L
2     30       A     L
3     54       A     L
4     25       A     L
5     70       A     L
6     52       A     L

Criar modelo de regressão

output <-glm(formula = breaks ~ wool+tension, data = warpbreaks,
   family = poisson)
print(summary(output))

Quando executamos o código acima, ele produz o seguinte resultado -

Call:
glm(formula = breaks ~ wool + tension, family = poisson, data = warpbreaks)

Deviance Residuals: 
    Min       1Q     Median       3Q      Max  
  -3.6871  -1.6503  -0.4269     1.1902   4.2616  

Coefficients:
            Estimate Std. Error z value Pr(>|z|)    
(Intercept)  3.69196    0.04541  81.302  < 2e-16 ***
woolB       -0.20599    0.05157  -3.994 6.49e-05 ***
tensionM    -0.32132    0.06027  -5.332 9.73e-08 ***
tensionH    -0.51849    0.06396  -8.107 5.21e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

(Dispersion parameter for poisson family taken to be 1)

    Null deviance: 297.37  on 53  degrees of freedom
Residual deviance: 210.39  on 50  degrees of freedom
AIC: 493.06

Number of Fisher Scoring iterations: 4

No resumo, procuramos que o valor p na última coluna seja inferior a 0,05 para considerar um impacto da variável preditora na variável de resposta. Como visto, o tipo lã B com tensão do tipo M e H tem impacto na contagem de quebras.