Accéder au contenu principal

GLM en R : Modèle linéaire généralisé

Découvrez les modèles linéaires généralisés (GLM) et leurs différences avec les modèles linéaires.
Actualisé 14 nov. 2024  · 2 min de lecture

Le modèle linéaire généralisé (GLM) est une généralisation de la régression linéaire ordinaire qui permet de prendre en compte des variables de réponse ayant des modèles de distribution d'erreur autres qu'une distribution normale, comme la distribution gaussienne.

Principes de base des GLM

Les GLM sont ajustés à l'aide de la fonction glm(). Comme les modèles linéaires (lm()s), glm()s a pour entrées des formules et des données, mais aussi une entrée familiale.

Syntaxe du modèle linéaire généralisé

Syntaxe du modèle linéaire généralisé

La famille gaussienne est la façon dont R se réfère à la distribution normale et est la valeur par défaut pour glm().

Similitude avec les modèles linéaires

Si la famille est gaussienne, un GLM est identique à un LM.

Similitude avec les modèles linéaires

Erreurs ou distributions non normales

Les modèles linéaires généralisés peuvent avoir des erreurs ou des distributions non normales. Toutefois, les distributions possibles sont limitées. Par exemple, vous pouvez utiliser la famille de Poisson pour les données de comptage ou la famille binomiale pour les données binomiales.

Fonctions de liaison non linéaires

Les GLM disposent également d'une fonction de liaison non linéaire, qui relie les coefficients de régression à la distribution et permet au modèle linéaire de se généraliser.

Exemple interactif de prédiction avec glm()

Cet exemple prédit le nombre attendu de victimes civiles quotidiennes d'incendies pour les mois d'été nord-américains de juin, juillet et août en utilisant la régression de Poisson et l'ensemble de données newDat.

Voici les données de l'ensemble de données newDat :

  Month   
1     6
2     7
3     8 

Les estimations de la pente et de l'ordonnée à l'origine de Poisson sont sur l'échelle du logarithme naturel et peuvent être exponentielles pour être plus facilement compréhensibles. Vous pouvez le faire en spécifiant type = "response" avec la fonction predict.

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

# print the predictions
print(predOut)

Lorsque nous exécutons le code ci-dessus, nous obtenons le résultat suivant :

         1          2          3
0.08611111 0.12365591 0.07795699 

Essayez-le vous-même.

Pour en savoir plus sur les modèles linéaires généralisés dans R, veuillez consulter cette vidéo de notre cours, Modèles linéaires généralisés dans R.

Ce contenu est extrait du cours de DataCamp " Generalized Linear Models in R" par Richard Erickson.

Consultez notre tutoriel sur la régression logistique en R.

Sujets

R Cours

Certification disponible

cours

Introduction à R

4 hr
2.8M
Maîtrisez les bases de l'analyse de données en R, y compris les vecteurs, les listes et les cadres de données, et pratiquez R avec des ensembles de données réels.
Afficher les détailsRight Arrow
Commencer Le Cours
Voir plusRight Arrow