Rég Log_test global var explicative à plusieurs modalités ?

Postez ici vos questions, réponses, commentaires ou suggestions - Les sujets seront ultérieurement répartis dans les archives par les modérateurs

Modérateur : Groupe des modérateurs

Claire Duflos
Messages : 4
Enregistré le : 27 Mai 2014, 15:51

Rég Log_test global var explicative à plusieurs modalités ?

Messagepar Claire Duflos » 29 Oct 2014, 17:17

Bonjour,

je fais une régression logistique binaire, dont les variables explicatives sont des facteurs, généralement à plus de 2 niveaux.

Je voudrais faire à la main une sélection backward des variables pour obtenir un modèle parcimonieux. Quand je travaillais sous SAS, j'avais appris à regarder le test global d'une variable pour choisir les variables à retirer.

Dans glm(), je ne trouve que les tests pour chaque modalité de chaque variable. Un test de significativité globale existe-t-il quelque part ?

merci
claire

Renaud Lancelot
Messages : 2484
Enregistré le : 16 Déc 2004, 08:01
Contact :

Messagepar Renaud Lancelot » 29 Oct 2014, 23:35

Code : Tout sélectionner

?drop1
Renaud

Eric Wajnberg
Messages : 776
Enregistré le : 11 Aoû 2008, 15:37
Contact :

Messagepar Eric Wajnberg » 30 Oct 2014, 06:20

Le plus simple, je pense, est de faire des tests de rapport de vraisemblance comme critère d'abandon ou de rajout d'une variable explicative.

Il y a dans R plusieurs fonctions qui fournissent cette information. Par exemple logLik(), ou AIC(), etc. logLik() donne le log de la vraisemblance - qui est distribué comme un Chi2 - et fourni également le df correspondant. Ca correspond je pense au "test global" dont vous parlez.

Sachez qu'il existe également des moyens directes de rechercher le modèle le plus parcimonieux (ou celui qui colle le mieux aux données), par exemple avec la fonction stepAIC() de la library MASS, etc.

HTH, Eric.

Claire Duflos
Messages : 4
Enregistré le : 27 Mai 2014, 15:51

Messagepar Claire Duflos » 30 Oct 2014, 15:43

merci pour vos réponses ! en résumé, il y a 2 méthodes : celle de SAS et celle de R.

- SAS : sélection des variables par le chi2 de wald mesurant la significativité des effets de type 3. C'est celle qui est utilisée par les procédures de sélection automatique, et que je cherchais à reproduire. Merci Eric, ce test (dans SAS) est effectivement très proche du test du rapport de vraisemblance entre le modèle M et le modèle M sans la variable en question (dans R). Je peux donc reproduire, dans R, cette méthode SAS honnie par un certain nombre d'habitués de ce forum...

- R : sélection des variables par un critère d'ajustement, par exemple l'AIC. Les fonctions données par Eric font toutes les étapes d'un coup, et la fonction donnée par Renaud permet d'avoir l'information pour faire chaque étape à la main.

Les modèles obtenus par les deux méthodes sont radicalement différents... problème qui sort de l'objectif de ce forum...

Autre problème sortant de l'objectif de ce forum, mais très rigolo dans sa capacité de perplexitudification du jeune utilisateur des outils stats : j'estime le même modèle avec les mêmes données sous SAS et sous R. J'obtiens les mêmes estimations (betas et sd(beta)). SAS (proc logistic) utilise le score de Fisher comme méthode d'utilisation, et glm() utilise la méthode IWLS - la lecture béate d'un tas de supports de cours me laisse penser que c'est la même méthode. La valeur par défaut du critère de convergence dans les deux logiciels est 10e-8 (mais est-ce le même critère ?), et le nombre max d'itérations est de 25. DIFFERENCE (de taille) observée : R converge en 15 itérations, SAS ne converge pas. WTF ???

Eric Wajnberg
Messages : 776
Enregistré le : 11 Aoû 2008, 15:37
Contact :

Messagepar Eric Wajnberg » 30 Oct 2014, 15:54

Deux Choses:

1) SAS n'est pas honnit pas les utilisateurs de ce forum sur R. Je suis moi-même un grand utilisateur de SAS, et le trouve meilleur pour gérer l'ajustement de GLM (y compris dans le cadre du modèle linéaire général dont l'ajustement ne passe pas par des convergences algorithmiques). Je suis aussi un grand utilisateur de R dont j'enseigne fréquemment l'usage. Les deux sont complémentaires selon moi.

2) Un logiciel ou l'autre ne devrait au final pas changer grand chose. Les calculs doivent converger vers les mêmes estimations des paramètres, et il ne doit y avoir à la marge que quelques variations liées à des détails calculatoires. Les méthodes qui sont derrières sont robustes et établies depuis des années pour la majorités d'entre elles. Il ne reste je pense que quelques querelles d'école (du genre type 3 ou pas, etc.). C'est ce que me dit mon expérience en tout cas. Votre phrase "Les modèles obtenus par les deux méthodes sont radicalement différents..." m'étonne donc. Des exemples seraient peut-être les bienvenus.

Cordialement,

Eric.

Claire Duflos
Messages : 4
Enregistré le : 27 Mai 2014, 15:51

Messagepar Claire Duflos » 30 Oct 2014, 16:15

Merci pour votre deuxième remarque, qui me permet de reconsidérer mon avis. Je disais que les modèles étaient radicalement différents, car les variables retenues étaient différentes : varR = varSAS + 3 autres. Ce jugement hâtif ne tient pas à l'examen attentif des estimations, qui sont effectivement très proches pour les variables présentes dans les 2 modèles. Me voilà rassurée !


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité