Bonjour,
Je realise une regression logistique avec le logiciel R. J'ai reussi à detecter mais je ne sais pas comment les supprimer. Pouvez vous m'indiquer comment faire svp merci d'avance
Version imprimable
Bonjour,
Je realise une regression logistique avec le logiciel R. J'ai reussi à detecter mais je ne sais pas comment les supprimer. Pouvez vous m'indiquer comment faire svp merci d'avance
Il faut que tu sois un peut plus explicite sur ta démarche, tes résultats et toutes informations qui nous permettrons de comprendre et comment te répondre.
Un peu de code serait le bien venu par exemple et une explication sur les données sur lesquelles tu travailles et comme tu détectes les valeurs aberrantes
Au plaisir de te lire.
Merci dey_ggy,
En fait je fais une régression logistique où ma variable dépendante c'est le travail des femmes et beaucoup de variables explicatives. J'ai fait la régression avec R, j'ai détecté les valeurs aberrantes avec la distance de cook et la méthode des résidus de Pearson. Maintenant je veux supprimer ces valeurs aberrantes pour reprendre la régression sans elles. Voici le morceau de code utilisé pour afficher les observations aberrantes:
Code:
1
2
3
4
5
6
7
8
9 library(rms) reg2 = lrm(Y ~ QTYPE + Q122 + âgepremiermariage + plushautniveauf + grpeâge + nbretotalviv + nbretotal5viv + Q225 + Q410 + Désirnaissfuture + ideal2 + Q707 + participe + plushautniveaum) reg2 e = rstandard(reg, type = "pearson") plot(e) e[abs(e) > 2] plot(reg, 4) cooks.distance(reg)[cooks.distance(reg) > 1]
Lignes 2 et 3, tu appelles le résultat de l'analyse reg2 et ensuite tu utilises reg. Quel est le lien entre ces deux variables ?
Es-tu sur d'avoir besoin de toutes ces variables car plusieurs écueils dont trop de variables à estimer pour le nombre de sujets, colinéarités des prédicteurs... à vérifier
Supprimer des lignes à partir de rstandard ou cooks.distance :
Soit donnees les données analyses et res.ana, le résultat de l'analyse et donnees.moins.aberrants, les données 'nettoyées' des points aberrants :
Code:
1
2
3 donnees.moins.aberrants <- donnees[rstandard( reg.ana) <= 2,] # ou donnees.moins.aberrants <- donnees[cooks.distance( reg.ana) <= valeur.seuil,]
Merci Faubry la première méthode que vous avez proposée marche parfaitement :) !!