FAQ SASConsultez toutes les FAQ

Nombre d'auteurs : 13, nombre de questions : 308, dernière mise à jour : 5 avril 2016  Ajouter une question

 

Cette F.A.Q., qui traite de tout type de questions portant sur l'outil SAS, a été réalisée à partir des contributions des membres des forums sas de developpez.com en vue de répondre à des questions fréquemment posées par les utilisateurs et grâce à SAS France qui a bien voulu nous donner accès à ses sources.

Si vous désirez contribuer à l'amélioration de cette F.A.Q., vous pouvez participer au billet de participation à l'enrichissement de la faq SAS , ou contacter le responsable SAS , ou contacter un des responsables de l'équipe Business Intelligence .

Nous espérons que cette F.A.Q. saura répondre à un maximum de vos questions. Nous vous souhaitons une bonne lecture.

L'équipe SAS de developpez.com remercie les contributeurs actuels : ash_rmy , bahraoui , datametric , fafabzh6 , Fleur-Anne.Blain , green_fr , oncle_pete , raf64flo , rastoix , s_a_m et steelspirit .

L'équipe SAS de developpez.com remercie aussi claudeLeloup et jacques_jean pour leurs relectures attentives de la F.A.Q. dans le but de chasser les fautes d'orthographes.


SommaireStatistiquesRégression et classificationModèles linéaires généralisés (11)
précédent sommaire suivant
 

Ce n'est pas prévu dans la procédure GLM. La solution consiste à passer par la procédure MIXED, avec une instruction MAKE.

Mis à jour le 11 décembre 2009 sas

Il suffit d'utiliser l'option 'hovtest' dans l'instruction 'means' : MEANS effects / HOVTEST; Plusieurs tests sont disponibles : Keyword = Bartlett, BF, Levene, Obrien. Par défaut, c'est le test de Levene qui est effectué.

Mis à jour le 11 décembre 2009 sas

Les procédures suivantes GLM, MIXED et VARCOMP réalisent des comparaisons multiples, toutefois elles sont optimisées pour les caractéristiques suivantes :

  • GLM : cas des effets majoritairement fixes ;
  • MIXED : combinaison d'effets fixes et aléatoires ;
  • VARCOMP : cas des effets majoritairement aléatoires.

Mis à jour le 11 décembre 2009 fafabzh6 sas

Il existe deux différences majeures entre les procédures MIXED et GLM :

  • MIXED propose uniquement des tests pour les effets fixes qui sont basés sur l'erreur de type 3, tandis que GLM offre des tests basés sur les erreurs de type 1,2, 3 et 4 ;
  • GLM utilise la méthode des moments pour estimer les composantes de la variance tandis que MIXED utilise le maximum de vraisemblance.

Mis à jour le 15 novembre 2011 sas

Par défaut dans la procédure MIXED, le nombre maximum d'itérations est de 150. L'option MAXFUNC permet à partir de la version 6.08 d'augmenter ce nombre d'itérations.

L'instruction PARMS permet quant à elle de changer la valeur initiale des estimateurs des paramètres à évaluer. Enfin, l'option METHOD paramètre le type de méthode de lissage à utiliser.

Mis à jour le 11 décembre 2009 sas

Il existe dans le Système SAS® deux procédures qui permettent de reconnaître l'hétéroscédasticité du signal :

  • MODEL module SAS/ETS®

Dans la procédure MODEL, l'option 'white' permet de tester l'existence d'hétéroscédasticité en mettant en oeuvre le test de White.

  • REG module SAS/STAT®.

Dans la procédure REG, l'option 'spec' teste la validité des moments d'ordre 1 ou 2. L'option 'acov' permet d'avoir une estimation de la matrice asymptotique de variance-covariance des régresseurs suivant l'article de White.

Mais toutes les deux ne proposent pas de correction dans l'estimation du modèle et des paramètres correspondants.

Pour corriger une régression des effets d'hétéroscédasticité, le Système SAS® propose une méthode utilisant la régression pondérée. Des informations théoriques concernant la correction de l'hétéroscédasticité par la régression pondérée sont disponibles dans le manuel SAS suivant :

Univariate and Multivariate General Linear Models Theory and Applications using SAS Software Neil H.Timm and Tammy A. Mieczkowski.

Le programme qui réalise cette correction est également disponible sur le site de SAS Institute sous la dénomination suivante : 'WLSE for data with heteroscedasticity' et à l'adresse suivante :
http://www.sas.com/samples/A55809

Mis à jour le 11 décembre 2009 sas

Il n'existe pas comme dans la procédure REG d'option offrant la possibilité d'obtenir une estimation directe d'intervalle de confiance sur les valeurs individuelles de la table SAS d'entrée.

Pour les procédures MIXED et GLM, il faut passer par l'option SOLUTION qui donne l'estimation des paramètres du modèle linéaire ajusté ainsi que la précision associée. Ensuite, il ne reste plus qu'à calculer la valeur estimée pour chacune des données d'entrée ainsi que l'intervalle de confiance associé.

Mis à jour le 15 novembre 2011 sas

Ces deux options calculent des intervalles de confiance de valeurs prédites moyennes et non pas de valeurs prédites individuelles. L'option PREDMEANS calcule des intervalles de confiance sans tenir compte des effets aléatoires tandis que l'option PREDICTED permet de tenir compte des effets aléatoires définis dans l'instruction RANDOM.

L'option PREDMEANS ne présente donc un intérêt uniquement si vous avez un effet aléatoire dans le modèle ajusté. Elle permet ainsi la comparaison avec et sans effet aléatoire.

Mis à jour le 15 novembre 2011 sas

S'ils sont nuls, c'est que l'on est en présence d'une matrice XX' singulière. Cela ne signifie nullement que l'estimation est mauvaise mais simplement qu'il existe une infinité de solutions au modèle à ajuster. Alors, afin de fournir au moins une solution parmi toutes celles possibles, la procédure ajoute une condition supplémentaire lors de la résolution du problème inverse. À savoir, elle impose la nullité de la dernière modalité de chaque variable.

Mis à jour le 15 novembre 2011 sas

Il n'y a pas d'options permettant de modifier le nombre de décimales des résultats.

Cependant, un contournement existe. Il s'agit de sauvegarder les résultats dans une table SAS, grâce à l'ODS OUTPUT, et d'appliquer ensuite le format à la variable concernée, comme dans l'exemple ci-dessous :

Code sas : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
Data Neural; 
input Treat $ Sex $ Age Dur Pain $ @@; 
datalines; 
P F 68 1 No B M 74 16 No P F 67 30 No 
P M 66 26 Yes B F 67 28 No B F 77 16 No 
A F 71 12 No B F 72 50 No B F 76 9 Yes 
A M 71 17 Yes A F 63 27 No A F 69 18 Yes 
B F 66 12 No A M 62 42 No P F 64 1 Yes 
A F 64 17 No P M 74 4 No A F 72 25 No 
P M 70 1 Yes B M 66 19 No B M 59 29 No 
A F 64 30 No A M 70 28 No A M 69 1 No 
B F 78 1 No P M 83 1 Yes B F 69 42 No 
B M 75 30 Yes P M 77 29 Yes P F 79 20 Yes 
A M 70 12 No A F 69 12 No B F 65 14 No 
B M 70 1 No B M 67 23 No A M 76 25 Yes 
P M 78 12 Yes B M 77 1 Yes B F 69 24 No 
P M 66 4 Yes P F 65 29 No P M 60 26 Yes 
A M 78 15 Yes B M 75 21 Yes A F 67 11 No 
P F 72 27 No P F 70 13 Yes A M 75 6 Yes 
B F 65 7 No P F 68 27 Yes P M 68 11 Yes 
P M 67 17 Yes B M 70 22 No A M 65 15 No 
P F 67 1 Yes A M 67 10 No P F 72 11 Yes 
A F 74 1 No B M 80 21 Yes A F 69 3 No 
; 
  
ods output parameterestimates=parms; /* création de la table parms */ 
  
proc genmod data=Neural; 
  class Treat Sex; 
  model Pain= Treat Sex Treat*Sex Age Dur/d=bin link=logit; 
run; 
  
data parms; 
 set parms; 
 format estimate 12.6; /* application d'un format */ 
run; 
  
proc print; 
run;

Mis à jour le 15 novembre 2011 sas

Le R² ajusté n'est pas fourni en standard.
Vous pouvez l'obtenir, à partir des résultats de la procédure GLM en utilisant l'ODS et une étape data comme dans l'exemple suivant :

Code sas : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
data iron; 
input fe loss @@; 
datalines; 
0.01 127.6 0.48 124.0 0.71 110.8 0.95 103.9 
1.19 101.5 0.01 130.1 0.48 122.0 1.44 92.3 
0.71 113.1 1.96 83.7 0.01 128.0 1.44 91.4 
1.96 86.2 
; 
  
ods output fitstatistics=fit_ds(keep=dependent rsquare) /*création de la table fit_ds */ 
     overallanova=anova(where=(source='Model')) /* création de la table anova */ 
     nobs=nobs(keep=nvalue1); /* création de la table nobs */ 
  
proc glm data=iron; 
 model loss=fe; 
run; 
  
data rsq; 
 merge fit_ds anova nobs; 
 m=df+1; 
 adj_rsq=1-(1-rsquare)*((nvalue1-1)/(nvalue1-m)); /* calcul du R2 ajusté */ 
 keep dependent rsquare adj_rsq; 
proc print; 
run;

Mis à jour le 15 novembre 2011 sas

Proposer une nouvelle réponse sur la FAQ

Ce n'est pas l'endroit pour poser des questions, allez plutôt sur le forum de la rubrique pour ça


Réponse à la question

Liens sous la question
précédent sommaire suivant
 

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2020 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.