Publié le :
Statistique CREATION_INTERNE

Analyse de mixtures de distributions avec PROC HPFMM sur les données Galaxy

Ce code est également disponible en : Deutsch English Español
En attente de validation
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.
Copié !
1title "HPFMM Analysis of Galaxies Data";
2DATA galaxies;
3 INPUT velocity @@;
4 v = velocity / 1000;
5 DATALINES;
69172 9350 9483 9558 9775 10227 10406 16084 16170 18419
718552 18600 18927 19052 19070 19330 19343 19349 19440 19473
819529 19541 19547 19663 19846 19856 19863 19914 19918 19973
919989 20166 20175 20179 20196 20215 20221 20415 20629 20795
1020821 20846 20875 20986 21137 21492 21701 21814 21921 21960
1122185 22209 22242 22249 22314 22374 22495 22746 22747 22888
1222914 23206 23241 23263 23484 23538 23542 23666 23706 23711
1324129 24285 24289 24366 24717 24990 25633 26960 26995 32065
1432789 34279
15;
16 
2 Bloc de code
PROC HPFMM
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é !
1title2 "Three to Seven Components, Unequal Variances";
2ods graphics on;
3PROC HPFMM DATA=galaxies criterion=AIC;
4 model v = / kmin=3 kmax=7;
5 ods exclude IterHistory OptInfo ComponentInfo;
6RUN;
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é !
1title2 "Three to Seven Components, Equal Variances";
2PROC HPFMM DATA=galaxies criterion=AIC gconv=0;
3 model v = / kmin=3 kmax=7 equate=scale;
4RUN;
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é !
1title2 "Five Components, Equal Variances = 0.9025";
2PROC HPFMM DATA=galaxies;
3 model v = / K=5 equate=scale;
4 restrict int 0 (scale 1) = 0.9025;
5RUN;
6ods 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.
Informations de Copyright : SAS SAMPLE LIBRARY