Räknedata och Poissonfördelning

Generaliserade linjära modeller i Python

Ita Cirovic Donev

Data Science Consultant

Räknedata

  • Räknar antalet händelser per angiven enhet av tid, avstånd, yta eller volym

Exempel:

  • Mål i en fotbollsmatch
  • Antal jordbävningar
  • Antal krabbasatelliter
  • Antal utmärkelser en person fått
  • Antal cyklister som passerar en bro
Generaliserade linjära modeller i Python

Poissonslumpvariabel

  • Händelser inträffar oberoende och slumpmässigt
  • Poissonfördelning

$$ P(y)=\frac{\lambda^ye^{-\lambda}}{y!} $$

  • $\lambda$ : medelvärde och varians
  • $y=0,1,2,3, ...$
    • $\text{\color{#E80C7A}{Alltid positiv}}$
    • Diskret (inte kontinuerlig)
    • $\text{\color{#E80C7A}{Undre gräns vid noll}}$, men ingen övre gräns
Generaliserade linjära modeller i Python

Förstå parametern i Poissonfördelningen

Fördelningsplot för Poissonslumpvariabeln med lambda lika med 1, 5 respektive 10.

Generaliserade linjära modeller i Python

Visualisera responsvariabeln

import seaborn as sns
sns.distplot('y')
Generaliserade linjära modeller i Python

Poissonregression

  • Responsvariabel $$ y \sim Poisson(\lambda) $$

  • Responsens medelvärde $$ E(y)=\lambda $$

  • Poissonregressionsmodell $$ log(\lambda)=\beta_0+\beta_1x_1 $$

Generaliserade linjära modeller i Python

Förklarande variabler

  • Kontinuerliga och/eller kategoriska $\rightarrow$ Poissonregressionsmodell
  • Kategoriska $\rightarrow$ log-linjär modell
Generaliserade linjära modeller i Python

GLM med Poisson i Python

import statsmodels.api as sm
from statsmodels.formula.api import glm
glm('y ~ x', 
    data = my_data,
    family = sm.families.Poisson())
Generaliserade linjära modeller i Python

Nu kör vi en övning!

Generaliserade linjära modeller i Python

Preparing Video For Download...