# logit_ex_corr.r # Chargement des fonctions et packages library(MASS) ############## # Exercice 4.1 load("Repondeur.rda") Rep <- Repondeur summary(Rep) # Création des deux formats de données nécessaires # Table pour utiliser la fonction loglm T <- xtabs(~Rep$Enfants+Rep$Travail+Rep$Repondeur) # Data Frame pour utiliser la fonction glm DF <- as.data.frame(T) DF # Modèle saturé M_O3 <- glm(Freq ~ (Rep.Enfants+Rep.Travail+Rep.Repondeur)^3,data=DF,family=poisson) summary(M_O3) # Modèle d'association homogène d'ordre 2 M_O2 <- glm(Freq ~ (Rep.Enfants+Rep.Travail+Rep.Repondeur)^2,data=DF,family=poisson) summary(M_O2) 1-pchisq(40.255,1) --> Meilleur modèle: le modèle saturé M_O3 # Modèle saturé avec dernière modalité comme modalité de référence M_final <- glm(Freq ~ (relevel(Rep.Enfants,2)+relevel(Rep.Travail,2)+relevel(Rep.Repondeur,2))^3,data=DF,family=poisson) summary(M_final) ############## # Exercice 4.2 load("PoidsBebe.rda") PB <- PoidsBebe summary(PB) # Création des deux formats de données nécessaires # Table pour utiliser la fonction loglm T <- xtabs(~PB$LOW+PB$SMOKE+PB$HT+PB$UI) # Data Frame pour utiliser la fonction glm DF <- as.data.frame(T) DF M_O2b <- glm(Freq ~ (PB.LOW+PB.SMOKE+PB.HT+PB.UI)^2 -PB.SMOKE:PB.HT-PB.SMOKE:PB.UI,data=DF,family=poisson) anova(M_O2b) # --> Ce modèle est le meilleur modèle log-linéaire pour les 4 variables, mais ce n'est # pas le modèle le plus simple pour estimer le modèle logit. M_logit <- glm(Freq ~ relevel(PB.LOW,2)+relevel(PB.SMOKE,2)+relevel(PB.HT,2)+relevel(PB.UI,2) +relevel(PB.LOW,2):relevel(PB.SMOKE,2)+relevel(PB.LOW,2):relevel(PB.HT,2) +relevel(PB.LOW,2):relevel(PB.UI,2),data=DF,family=poisson) summary(M_logit)