Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > SAS > SAS STAT
SAS STAT Forum d'entraide sur les fonctionnalités liées à la statistique sur SAS : statistique descriptive, test, régression, classification
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 18/01/2011, 12h07   #1
Invité régulier
 
ben kab
Inscription : octobre 2010
Messages : 54
Détails du profil
Informations personnelles :
Nom : ben kab

Informations forums :
Inscription : octobre 2010
Messages : 54
Points : 9
Points : 9
Par défaut Contribution sur les Axes

Bonjour,

Sur une jeu de données j'ai trouvé des individus aberrants, il faudra que je les supprime, quelle est l'instuction qui me permet de le faire?

Comment puis-je déterminer la contributions des individus sur les axes?

Merci d'avance
demido est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/01/2011, 15h14   #2
Membre Expert
 
Homme
Biostatisticien
Inscription : juin 2009
Messages : 1 143
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Irlande

Informations professionnelles :
Activité : Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : juin 2009
Messages : 1 143
Points : 1 760
Points : 1 760
Bonjour Demido,

Apparement tu n'as pas de soucis concernant la détection des individus aberrants. Juste pour information le terme "aberrant" peut caractériser pas mal de situations différentes suivant la définition que chacun en fait.

Par contre il pourrait être utile de préciser ce que tu entends par "trouvé". S'agit-il d'une détection visuelle ou nominative? Dans le deuxième cas un where ou un if then delete dans une étape data résoudra simplement ton problème. Dans le premier cas il s'agit de déterminer leur identifiant.

Suivant l'analyse que tu effectues, il peut exister des moyens très simples. Dans le cas d'une régression prog reg dispose de l'option influence qui te permettra d'établir des diagnostics d'influence.

une page pas mal:
http://www.technion.ac.il/docs/sas/s...p55/sect38.htm
  • DFFITS: influence d'une observation sur une seule valeur "fittée"
  • DFBETAs: influence sur les coef de régression
  • Distance de Cook (non évoquée dans cette page ) :influence sur toutes les valeurs fittées

Manoutz
Manoutz est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 22/01/2011, 09h22   #3
Invité régulier
 
ben kab
Inscription : octobre 2010
Messages : 54
Détails du profil
Informations personnelles :
Nom : ben kab

Informations forums :
Inscription : octobre 2010
Messages : 54
Points : 9
Points : 9
Par défaut Contribution sur les axes

Merci de ta réponse, par contre par individus abbérants je veux dire les individus isolés.
Je me confie au nuage des points pour les détecter, y a t-il un autre moyen pour les détecter?

Merci d'avance
demido est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/01/2011, 12h45   #4
Membre Expert
 
Avatar de MEGAMIND2
 
Homme Brice Beare
Paris
Inscription : janvier 2011
Messages : 956
Détails du profil
Informations personnelles :
Nom : Homme Brice Beare
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Paris

Informations forums :
Inscription : janvier 2011
Messages : 956
Points : 1 366
Points : 1 366
Bonjour,
un bon nombre d’indicateurs permettent de repérer les valeurs aberrantes (résidu trop élevé) et les valeurs anormalement influentes (sur les coefficients de la régression (Cook’D) et sur l’erreur s (Dfits)),
ou encore le RSTUDENT (Studentized residual (deleted)), traité dans ce cas.

RSTUDENT :
On admet généralement qu’il doit être compris entre -2 et 2 lorsque n est grand. Si cette condition n'est pas vérifiée, l'individu est supprimé du modèle.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
DATA fitness; 
      input Age Weight Oxygen RunTime RestPulse RunPulse MaxPulse @@; 
      datalines; 
   44 89.47 44.609 11.37 62 178 182   40 75.07 45.313 10.07 62 185 185 
   44 85.84 54.297  8.65 45 156 168   42 68.15 59.571  8.17 40 166 172 
   38 89.02 49.874  9.22 55 178 180   47 77.45 44.811 11.63 58 176 176 
   40 75.98 45.681 11.95 70 176 180   43 81.19 49.091 10.85 64 162 170 
   44 81.42 39.442 13.08 63 174 176   38 81.87 60.055  8.63 48 170 186 
   44 73.03 50.541 10.13 45 168 168   45 87.66 37.388 14.03 56 186 192 
   45 66.45 44.754 11.12 51 176 176   47 79.15 47.273 10.60 47 162 164 
   54 83.12 51.855 10.33 50 166 170   49 81.42 49.156  8.95 44 180 185 
   51 69.63 40.836 10.95 57 168 172   51 77.91 46.672 10.00 48 162 168 
   48 91.63 46.774 10.25 48 162 164   49 73.37 50.388 10.08 67 168 168 
   57 73.37 39.407 12.63 58 174 176   54 79.38 46.080 11.17 62 156 165 
   52 76.32 45.441  9.63 48 164 166   50 70.87 54.625  8.92 48 146 155 
   51 67.25 45.118 11.08 48 172 172   54 91.63 39.203 12.88 44 168 172 
   51 73.71 45.790 10.47 59 186 188   57 59.08 50.545  9.93 49 148 155 
   49 76.32 48.673  9.40 56 186 188   48 61.24 47.920 11.50 52 170 176 
   52 82.78 47.467 10.50 53 170 172 
   ; 
RUN;
Code :
1
2
3
proc reg DATA=fitness; 
      model Oxygen=Age Weight RunTime RunPulse RestPulse MaxPulse 
            /  influence;run;

Dans cet exemple on va supprimer l’observation 15 et 17. (RSTUDENT= 2.8306 et RSTUDENT= -2.7453 )



Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
proc reg DATA=fitness; 
      model Oxygen=Age Weight RunTime RunPulse RestPulse MaxPulse 
            /  influence;
run;
 
 
			    reweight obs.=15;
			    reweight obs.=17;
 
     model Oxygen=Age Weight RunTime RunPulse RestPulse MaxPulse ;
    run;
 
quit;


Brice
MEGAMIND2 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 24/01/2011, 10h23   #5
Membre Expert
 
Homme
Biostatisticien
Inscription : juin 2009
Messages : 1 143
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Irlande

Informations professionnelles :
Activité : Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : juin 2009
Messages : 1 143
Points : 1 760
Points : 1 760
OK donc tu ne fais pas de modélisation mais l'idée est de détecter les individus extrêmes à partir des données, soit par détection graphique ou analyse descriptive. C'est bien ca?

Dans ce cas je te conseille la proc boxplot, qui en plus du box plot dispose d'un moyen de détection des individus extremes en se basant sur l'interquartile range. Voir aide en ligne de la proc boxplot, en particulier l'option boxstyle.

http://support.sas.com/documentation...ot_sect012.htm

Pour la détection nominative des individus, tu peux reproduire l'esprit de ce qui est fait fait dans la boxplot (si on ne peut pas le récupérer par la boxplot, faut voir..) très facilement grace à une procédure d'analyse descriptive: proc means, proc univariate.
Manoutz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2011, 16h07   #6
Invité régulier
 
ben kab
Inscription : octobre 2010
Messages : 54
Détails du profil
Informations personnelles :
Nom : ben kab

Informations forums :
Inscription : octobre 2010
Messages : 54
Points : 9
Points : 9
Par défaut Contribution sur les Axes

Tout d'abord merci pour vos réponses,
Donc le coefficient de Student est obtenu par la proc reg c'est bien cela?
demido est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2011, 16h17   #7
Membre Expert
 
Avatar de MEGAMIND2
 
Homme Brice Beare
Paris
Inscription : janvier 2011
Messages : 956
Détails du profil
Informations personnelles :
Nom : Homme Brice Beare
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Paris

Informations forums :
Inscription : janvier 2011
Messages : 956
Points : 1 366
Points : 1 366
C'est bien ça!
On peut considérer qu’une observation est mal reconstituée par le modèle (ou aberrante) lorsque :


Brice
MEGAMIND2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2011, 16h19   #8
Membre Expert
 
Homme
Biostatisticien
Inscription : juin 2009
Messages : 1 143
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Irlande

Informations professionnelles :
Activité : Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : juin 2009
Messages : 1 143
Points : 1 760
Points : 1 760
oui (c'était d'ailleurs précisé dans le lien que je t'ai indiqué au dessus).

mais pourquoi comptes tu effectuer une proc reg si tu comptes te baser sur le nuage de points? (et pourquoi as tu replacé un deuxième sujet?)
Manoutz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/01/2011, 18h31   #9
Invité régulier
 
ben kab
Inscription : octobre 2010
Messages : 54
Détails du profil
Informations personnelles :
Nom : ben kab

Informations forums :
Inscription : octobre 2010
Messages : 54
Points : 9
Points : 9
Par défaut Contribution sur les axes

Bonjour,
Quand je me sert du nuage des points, je repère les outliers et je les supprime par contre si je refais une ACP derrière je remarque qu'il y a toujours des outliers.
J'ai vu dans une doc que je pouvais passer par l'option Analyse interactive des données, en affichant pour chaque variables le sgplot(boite à moustache=) sur laquelle en peut aussi voir les point extrème.
Je ne compte pas passer par une proc logistic, je pensais qu'il le fallait.
En tout cas merci pour vos réponses si utiles.
demido est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/01/2011, 19h04   #10
Membre Expert
 
Avatar de MEGAMIND2
 
Homme Brice Beare
Paris
Inscription : janvier 2011
Messages : 956
Détails du profil
Informations personnelles :
Nom : Homme Brice Beare
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Paris

Informations forums :
Inscription : janvier 2011
Messages : 956
Points : 1 366
Points : 1 366
Je pense que tu confonds une analyse descriptive et quantitative.
La modélisation (proc reg ou logistic) n'a pas pour but de détecter des valeurs aberrantes dans un jeux de données. T'as bien fait de laisser tomber cette piste, ce qui est logique .
Bon courage!

Brice
MEGAMIND2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/01/2011, 19h29   #11
Membre Expert
 
Homme
Biostatisticien
Inscription : juin 2009
Messages : 1 143
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Irlande

Informations professionnelles :
Activité : Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : juin 2009
Messages : 1 143
Points : 1 760
Points : 1 760
de rien pour les réponses, par contre plus ca va plus il m'est difficile de discerner ce que tu veux faire.

Apparement ton objectif est de réaliser une acp - qui en résumé transforme des variables liées entre elles pour créer de nouvelles variables, indépendantes. A la croisée des chemins entre géométrie et statistique (qui d'ailleurs se confondent souvent..), elle permet de réduire l'information contenue initialement dans tes variables en un nombre de composantes plus limitées. Evidemmemment, vu que le but est de synthétiser l'essentiel de l'information, tu ne pourras pas avoiir toute l'information initiale dans une composante, et plus tu auras de composantes moins tu synthétisera tes données initiales. Il faut donc choisir un nombre composantes, généralement en fonction de l'inertie ou de la variance expliquée.

Voila pour le petit rappel. Alors évidemment, si tu transformes tes variables via une acp, il est tout à faire raisonnable de penser que tu puisses trouver des individus extrêmes à l'issue de celle ci. Mais ca n'explique pas pourquoi tu en as retiré avant... Quel dommage de se passer d'information qui te pourrait être utile, voire changer tes résultats...

donc je me permets de reposer la question: quel est ton but et quelle méthodologie appliques tu pour atteindre l'objectif escompté?

Manoutz
Manoutz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/01/2011, 19h34   #12
Membre Expert
 
Homme
Biostatisticien
Inscription : juin 2009
Messages : 1 143
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Irlande

Informations professionnelles :
Activité : Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : juin 2009
Messages : 1 143
Points : 1 760
Points : 1 760
je ne connais pas le sgplot, c'est quoi? Pour l'équivalent anglais de la boite à moustache, on parle généralement de boxplot.

J'insisté, mais merci de ne éclairer sur ce que tu veux faire. pêle mêle, tu parles de proc logistic, sgplot, proc reg, boite à moustache, élimination d'individus extrêmes...
Manoutz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/01/2011, 21h37   #13
Invité régulier
 
ben kab
Inscription : octobre 2010
Messages : 54
Détails du profil
Informations personnelles :
Nom : ben kab

Informations forums :
Inscription : octobre 2010
Messages : 54
Points : 9
Points : 9
Par défaut Contribution sur les axes

En fait je suis sur un projet en Master, j'ai un jeu de données et il m'a été demandé de repérer les données très extrêmes soit à partir des données brut ou à l'aide d'une ACP.
de les enlever et de faire une typologie après, voila
demido est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/01/2011, 10h02   #14
Membre Expert
 
Homme
Biostatisticien
Inscription : juin 2009
Messages : 1 143
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Irlande

Informations professionnelles :
Activité : Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : juin 2009
Messages : 1 143
Points : 1 760
Points : 1 760
La réponse est dans la question. Fais les deux et compare, établis un diagnostic!

Maintenant il faut que tu cherches un peu, on va pas te faire ton projet non plus...

Alors échange de bon procédés: on t'a pas mal aidé, donne nous en retour tes conclusions sur la comparaison des méthodes de détection des indivdus extrêmes par boxplot, unhivariate et acp.

De toute facon cette comparaison ne sera que bénéfique pour ton projet.

A bientôt j'espère,

Manoutz
Manoutz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2011, 10h34   #15
Invité régulier
 
ben kab
Inscription : octobre 2010
Messages : 54
Détails du profil
Informations personnelles :
Nom : ben kab

Informations forums :
Inscription : octobre 2010
Messages : 54
Points : 9
Points : 9
Par défaut Contribution des Axes

Bonjour,

Au fait je suis passé par les var centrées et réduites et faire appel à la
proc univariate.
Le test était de repérer les obs tel que |obs|>2.
Par contre sur un jeu de données de 110 j'en ai trouvé 15, est-ce normal?
Merci
demido est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2011, 10h51   #16
Expert Confirmé
 
Avatar de olivier.decourt
 
Homme Olivier Decourt
Formateur en informatique
Inscription : avril 2008
Messages : 1 467
Détails du profil
Informations personnelles :
Nom : Homme Olivier Decourt
Âge : 34
Localisation : France

Informations professionnelles :
Activité : Formateur en informatique
Secteur : Conseil

Informations forums :
Inscription : avril 2008
Messages : 1 467
Points : 2 823
Points : 2 823
Salut.
15/110 ça fait 13,5% environ. Si ta variable suivait exactement une loi normale, une fois centrée et réduite tu n'aurais qu'environ 5% d'individus > 2 en valeur absolue.
Maintenant, la question est de savoir si ta donnée suit une loi normale. Si oui, ton filtrage par rapport à 2 est pertinent. Sinon, il n'a pas d'assise concrète et c'est un seuil totalement arbitraire.
Bon courage pour ton projet.
Olivier
olivier.decourt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2011, 10h52   #17
Membre Expert
 
Avatar de MEGAMIND2
 
Homme Brice Beare
Paris
Inscription : janvier 2011
Messages : 956
Détails du profil
Informations personnelles :
Nom : Homme Brice Beare
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Paris

Informations forums :
Inscription : janvier 2011
Messages : 956
Points : 1 366
Points : 1 366
ça veut dire quoi |obs|>2.? obs c'est un test?
MEGAMIND2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2011, 11h08   #18
Invité régulier
 
ben kab
Inscription : octobre 2010
Messages : 54
Détails du profil
Informations personnelles :
Nom : ben kab

Informations forums :
Inscription : octobre 2010
Messages : 54
Points : 9
Points : 9
Par défaut Contributions aux Axes

Oui, c'est un test à chaque fois qu'un individu a une valeur supérieure à 2 par rapport à une variable, il est supprimé.

Est-ce que je peux juste afficher tous les individus sur le premier plan factoriel et je supprime ceux qui sont excentrés donc c'est une méthode visuelle

Merci pour vos réponse
demido est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2011, 11h12   #19
Membre Expert
 
Avatar de MEGAMIND2
 
Homme Brice Beare
Paris
Inscription : janvier 2011
Messages : 956
Détails du profil
Informations personnelles :
Nom : Homme Brice Beare
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Paris

Informations forums :
Inscription : janvier 2011
Messages : 956
Points : 1 366
Points : 1 366
Faudrait que je regarde la méthode avec une matrice centrée réduite avant de m'avancer
MEGAMIND2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2011, 11h23   #20
Responsable SAS
 
Inscription : septembre 2006
Messages : 1 961
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 1 961
Points : 4 672
Points : 4 672
Citation:
Envoyé par MEGAMIND2 Voir le message
ça veut dire quoi |obs|>2.? obs c'est un test?
C'est la valeur du quantile de la loi normale à 5%.
Z(0.95)=1.96 (=2)
__________________
Les balises code
FAQ SAS
Rubrique SAS

Si vous souhaitez contribuer à la rubrique SAS, contactez-moi ou tout autre membre de l'équipe BI par MP.
fafabzh6 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h37.


 
 
 
 
Partenaires

Hébergement Web