Le script commence par créer un jeu de données 'galaxies' contenant les vitesses de plusieurs galaxies. Ensuite, il applique la procédure HPFMM en trois étapes : 1) Recherche du nombre optimal de composantes (de 3 à 7) avec des variances inégales, en se basant sur le critère AIC. 2) Même recherche mais en forçant des variances égales entre les composantes. 3) Ajustement d'un modèle final à 5 composantes avec une contrainte sur la valeur de la variance commune.
Analyse des données
Type : CREATION_INTERNE
Les données sont créées directement dans le script via une étape DATA et une instruction DATALINES. La variable 'velocity' est lue et transformée en une nouvelle variable 'v' pour l'analyse.
1 Bloc de code
DATA STEP Data
Explication : Ce bloc DATA STEP lit les données de vitesse des galaxies fournies via 'datalines'. L'opérateur '@@' (double trailing at) permet de lire plusieurs observations sur une même ligne de données. Une nouvelle variable 'v' est calculée en divisant 'velocity' par 1000 pour la mise à l'échelle.
Explication : Première analyse avec HPFMM pour déterminer le nombre optimal de composantes (entre 3 et 7, options kmin et kmax) basé sur le critère d'information d'Akaike (AIC). Par défaut, les variances des composantes normales sont estimées séparément (inégales). Les graphiques ODS sont activés et certaines tables de sortie (historique d'itération, informations d'optimisation) sont masquées.
Copié !
title2 "Three to Seven Components, Unequal Variances";
ods graphics on;
proc hpfmm data=galaxies criterion=AIC;
model v = / kmin=3 kmax=7;
ods exclude IterHistory OptInfo ComponentInfo;
run;
1
title2 "Three to Seven Components, Unequal Variances";
2
ods graphics on;
3
PROC HPFMMDATA=galaxies criterion=AIC;
4
model v = / kmin=3 kmax=7;
5
ods exclude IterHistory OptInfo ComponentInfo;
6
RUN;
3 Bloc de code
PROC HPFMM
Explication : Seconde analyse avec HPFMM, similaire à la première, mais avec la contrainte que les variances des composantes soient égales (option EQUATE=SCALE). Le critère de convergence sur le gradient est désactivé (gconv=0).
Copié !
title2 "Three to Seven Components, Equal Variances";
proc hpfmm data=galaxies criterion=AIC gconv=0;
model v = / kmin=3 kmax=7 equate=scale;
run;
1
title2 "Three to Seven Components, Equal Variances";
2
PROC HPFMMDATA=galaxies criterion=AIC gconv=0;
3
model v = / kmin=3 kmax=7 equate=scale;
4
RUN;
4 Bloc de code
PROC HPFMM
Explication : Troisième et dernière analyse ajustant un modèle spécifique à 5 composantes (K=5), avec des variances égales (EQUATE=SCALE). L'instruction RESTRICT ajoute une contrainte pour fixer la valeur de cette variance commune à 0.9025. Finalement, les graphiques ODS sont désactivés.
Copié !
title2 "Five Components, Equal Variances = 0.9025";
proc hpfmm data=galaxies;
model v = / K=5 equate=scale;
restrict int 0 (scale 1) = 0.9025;
run;
ods graphics off;
Ce matériel est fourni "tel quel" par We Are Cas. Il n'y a aucune garantie, expresse ou implicite, quant à la qualité marchande ou à l'adéquation à un usage particulier concernant le matériel ou le code contenu dans les présentes. We Are Cas n'est pas responsable des erreurs dans ce matériel tel qu'il existe maintenant ou existera, et We Are Cas ne fournit pas de support technique pour celui-ci.
SAS et tous les autres noms de produits ou de services de SAS Institute Inc. sont des marques déposées ou des marques de commerce de SAS Institute Inc. aux États-Unis et dans d'autres pays. ® indique un enregistrement aux États-Unis. WeAreCAS est un site communautaire indépendant et n'est pas affilié à SAS Institute Inc.
Ce site utilise des cookies techniques et analytiques pour améliorer votre expérience.
En savoir plus.