Ga naar hoofdinhoud

GLM in R: Generalized Linear Model

Leer over generalized linear models (GLM) en hoe ze verschillen van lineaire modellen.
· 2 min lezen

Verken met AI

Een generalized linear model (GLM) is een generalisatie van gewone lineaire regressie die toestaat dat responsvariabelen foutverdelingen hebben anders dan een normale verdeling, zoals de Gauss-verdeling.

Basisprincipes van GLM

GLM's pas je met de functie glm(). Net als lineaire modellen (lm()s) hebben glm()s formules en data als invoer, maar ook een family-argument.

Syntaxis van een Generalized Linear Model

Syntaxis van een Generalized Linear Model

De Gaussian-family is hoe R verwijst naar de normale verdeling en is de standaard voor een glm().

Overeenkomst met lineaire modellen

Als de family Gaussian is, dan is een GLM hetzelfde als een LM.

Overeenkomst met lineaire modellen

Niet-normale fouten of verdelingen

Generalized linear models kunnen niet-normale fouten of verdelingen hebben. Er zijn echter beperkingen aan de mogelijke verdelingen. Zo kun je de Poisson-family gebruiken voor teldata, of de binomiale family voor binomiale data.

GLM's hebben ook niet-lineaire koppelingsfuncties (link functions), die de regressiecoëfficiënten koppelen aan de verdeling en het lineaire model laten generaliseren.

Interactief voorbeeld van voorspellen met glm()

Dit voorbeeld voorspelt het verwachte aantal dagelijkse burgerlijke brandwondslachtoffers voor de Noord-Amerikaanse zomermaanden juni, juli en augustus met behulp van de Poisson-regressie en de dataset newDat.

Hier zijn de gegevens in de newDat-dataset:

  Month   
1     6
2     7
3     8 

De Poisson-helling en -interceptschattingen staan op de natuurlijke log-schaal en kunnen geëxponentieerd worden om ze gemakkelijker te begrijpen. Je kunt dit doen door type = "response" op te geven bij de predict-functie.

# use the model to predict with new data
predOut <- predict(object = poissonOut, newdata = newDat, type = "response")

# print the predictions
print(predOut)

Als we bovenstaande code uitvoeren, levert dat het volgende resultaat op:

         1          2          3
0.08611111 0.12365591 0.07795699 

Probeer het zelf.

Wil je meer leren over generalized linear models in R? Bekijk dan deze video uit onze cursus Generalized Linear Models in R.

Deze content is afkomstig uit DataCamp’s cursus Generalized Linear Models in R van Richard Erickson.

Bekijk ook onze Tutorial Logistische Regressie in R.

Onderwerpen

Gerelateerd