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 15/02/2011, 13h25   #1
Membre habitué
 
Homme Julien
Ingénieur d'études / Biostatisticien
Inscription : décembre 2009
Messages : 304
Détails du profil
Informations personnelles :
Nom : Homme Julien
Localisation : France

Informations professionnelles :
Activité : Ingénieur d'études / Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : décembre 2009
Messages : 304
Points : 101
Points : 101
Par défaut Test de Welch et de Wilcoxon

Bonjour, (désolé d'innonder le forum de mes topics lol...)

Je cherche toujours à comparer les résultats avec SAS et R, cette fois-ci pour les tests de Welch et Wilcoxon pour lesquels j'obtiens des résultats différents, à peu de chose prés mais pour mon unité il m'est nécessaire de trouver exactement la même chose à arrondi prêt... à moins de pouvoir justifier la différence et prouver qu'elle n'est pas importante.

Voici une matrice sur laquelle je compare tout d'abord la valeur de la statistique de test avec mon prog R puis mon prog SAS:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
DATA test2;
INPUT Statut var;
CARDS;
1   15
1   10
1   12
1   14
1   13
2    8
2    9
2    7
2    9
2   10
;
RUN;
Code :
1
2
3
4
5
6
7
8
 
ODS OUTPUT WELCH = vue;
PROC ANOVA DATA = test2;
CLASS Statut;
MODEL var = Statut;
MEANS Statut / WELCH;
RUN;
ODS OUTPUT CLOSE;

La p-valeur que je trouve avec R est de 0.0158 contre 0.0048 avec SAS. Analogiquement j'ai une statistique de test de -4.2 pour R et de 17.64 pour SAS.
Donc déjà ça cloche pas mal disons.

J'ai donc calculé à la main avec la formule:
- Numérateur = mean(X1) - mean(X2)
- Dénominateur = sqrt [ (var(X1) / N1) + (var(X2) / N2) ]
La division me donnant une statistique de test = 4.2 .

Donc mon test sous SAS est faux, aussi je voulais savoir si, d'une part, ma syntaxe était la bonne et si, d'autre part, ce test ce fait avec la même formule sous SAS. Je demande car pour l'algorithme des analyses discriminantes si on le reprends à la main, on se rend compte que SAS applique un peu sa sauce par rapport à l'algorithme de base (pas de matrice d'Huygens et division des matrices de covariance par n-1 et non n par exemple).

En vous remerciant d'avance, je ne suis pas allé jusqu'à Wilcoxon, je vérifie ce test dés que j'aurais régler Welch.
joyeux_lapin13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2011, 18h46   #2
Rédacteur
 
Homme Stéphane
Consultant et formateur SAS et Cognos
Inscription : avril 2009
Messages : 1 791
Détails du profil
Informations personnelles :
Nom : Homme Stéphane
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Consultant et formateur SAS et Cognos
Secteur : Conseil

Informations forums :
Inscription : avril 2009
Messages : 1 791
Points : 4 012
Points : 4 012
J'ai le même résultat que toi effectivement mais au niveau des hypothèses, R utilise-t-il les mêmes ?

En partant de là
http://support.sas.com/documentation...eans_opt_welch
et
http://support.sas.com/documentation...0000000864.htm

R est en phase avec SAS ?

Si tu pars de ce jeu de données, j'imagine que R ne donne pas les mêmes résultats ?
http://support.sas.com/documentation...lm_sect055.htm
__________________
N'oubliez pas de cliquer sur lorsque votre problème est réglé !

Moteur de recherche dans les papiers SAS
datametric est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 16/02/2011, 09h11   #3
Membre habitué
 
Homme Julien
Ingénieur d'études / Biostatisticien
Inscription : décembre 2009
Messages : 304
Détails du profil
Informations personnelles :
Nom : Homme Julien
Localisation : France

Informations professionnelles :
Activité : Ingénieur d'études / Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : décembre 2009
Messages : 304
Points : 101
Points : 101
Salut Datemetric, merci à toi pour ton intérêt pour mon topic! désolé de ne pas répondre le soir mais je rentre du boulot et je n'ai pas internet chez moi du coup...

Bref! en fait aprés avoir continuer à chercher de mon côté il se trouve que le test de Welch qui correspond à celui que j'ai sous R est obtenu par la procédure TTEST et figure dans la table où l'ont trouve en ligne les méthodes nommées "pooled" et "Satterthwaite". Welch étant l'équivalent de Student pour des variances inégales, donc c'est le second et là je trouve bien la même statistique de test.

Maintenant mon hic est que j'ai pas la même p-valeur, là j'ai: 0.0048... alors soit je dois déjà la diviser par 2 car sur R la statistique de test était -4.2, de plus mon prog R fait entrer les permutations apparemment à un moment ou un autre, aussi une petit question comme ça car moi ça me dit absolument rien, est-ce que vous avez une idée du pourquoi?

L'autre question que je me pose est: est ce que le test de Welch peut suivre une loi différente en fonction de la littérature? ce qui peut expliquer pourquoi j'ai cette différence de p-valeur.

Concernant le test de Wilcoxon je vais vérifier mais normalement avec la proc NPAR1WAY je devrais avoir au moins la même statistique de test.
joyeux_lapin13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2011, 09h57   #4
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
Attention avant de se lancer dans un diagnostic d'une erreur du logiciel SAS!!

Es tu sur de bien effectuer la même chose sous les deux logiciels (les défauts peuvent être différents)?

Par ailleurs, as tu remarqué que -4.2*-.42=17.64?
Manoutz est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 16/02/2011, 10h21   #5
Membre habitué
 
Homme Julien
Ingénieur d'études / Biostatisticien
Inscription : décembre 2009
Messages : 304
Détails du profil
Informations personnelles :
Nom : Homme Julien
Localisation : France

Informations professionnelles :
Activité : Ingénieur d'études / Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : décembre 2009
Messages : 304
Points : 101
Points : 101
Salut Manoutz, alors le coup du carré j'y ai pensé, en plus c'est bien l'esprit SAS te mettre un n-1, une racine carré ou un carré là où on s'y attends moins lol (notation Américaine est l'explication qui m'avait était fournit à l'époque où j'avais constaté celà).

Mais le souci du carré c'est que je lui trouve aucune explication malheureusement...

Ensuite je pense pas avoir diagnostiqué une erreur SAS mais plus un manque d'information de ma part quand à ce que fait réellement l'option Welch de la proc ANOVA.

De plus j'ai essayé sur un autre jeu de données avec plus de variables et les statistiques de test concordent toutes entre le programme R que j'ai et la proc TTEST. Concernant le code R je travaille dans une boîte assez sérieuse et il est utilisé depuis suffisamment de temps pour que je ne puisse le remettre en question en fait...

Du coup avec TTEST j'ai même pu rajouter le calcul du test de Welch ou de Student en fonction de la p-valeur du test d'égalité des variances, donc ça aura été finalement un mal pour un bien.

Bref, le seul souci que j'ai c'est que la p-valeur sortie par mon code R est différente de celle par SAS et celà pour une même statistique de test, d'où les question que je me posais dans ma réaction précédente.
joyeux_lapin13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2011, 10h56   #6
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
Citation:
Envoyé par joyeux_lapin13 Voir le message
Bref, le seul souci que j'ai c'est que la p-valeur sortie par mon code R est différente de celle par SAS et celà pour une même statistique de test, d'où les question que je me posais dans ma réaction précédente.
Je pense que la loi est probablement la même, je chercherais au niveau des degrés de liberté : dans le cas des variances inégales, les DF sont calculés avec des formules compliquées. Il faudrait les vérifier entre R et SAS, peut-être ont-ils des choix différents.
olivier.decourt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/02/2011, 11h21   #7
Membre habitué
 
Homme Julien
Ingénieur d'études / Biostatisticien
Inscription : décembre 2009
Messages : 304
Détails du profil
Informations personnelles :
Nom : Homme Julien
Localisation : France

Informations professionnelles :
Activité : Ingénieur d'études / Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : décembre 2009
Messages : 304
Points : 101
Points : 101
J'vais regarder ça en effet, par contre je viens de vérifier pour Wilcoxon et j'ai quasiment les même statistiques et p-valeur avec SAS et R, la différence provient surement de la façon des deux logiciels de calculer les rangs.

Par contre, je reviens sur ce point au cas où, une idée de ce que viendrait faire les permutations dans les p-valeurs? une façon de les corriger? où vraiment ça peut intervenir dans leur calcul?

De plus la fonction R que j'utilise est mt.minP() qui provient de package multtest.
joyeux_lapin13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/02/2011, 13h33   #8
Membre habitué
 
Homme Julien
Ingénieur d'études / Biostatisticien
Inscription : décembre 2009
Messages : 304
Détails du profil
Informations personnelles :
Nom : Homme Julien
Localisation : France

Informations professionnelles :
Activité : Ingénieur d'études / Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : décembre 2009
Messages : 304
Points : 101
Points : 101
Je me permet de revenir à la charge sur mon problème qui n'est toujours pas résolu...

Alors aprés avoir tester un nombre faramineux de ddl, pour que mes résultats sous SAS et R concordent il me faut un ddl = 3.727302.

Sachant que SAS et R sont d'accords pour la statistique de test = 4.2, ddl = 6.502 par SAS.

A défaut de trouver une explication, pensez vous que quelque soit la façon dont SAS et R calculent leur ddl, la p-valeur conserve la même logique? et est interprétable de pareil manière dans les deux cas et avec une même fiabilité?

Merci à tout ceux qui se sont intéressés à mon problème.
joyeux_lapin13 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 10h56.


 
 
 
 
Partenaires

Hébergement Web