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 21/06/2011, 16h26   #1
Invité de passage
 
Inscription : décembre 2009
Messages : 117
Détails du profil
Informations forums :
Inscription : décembre 2009
Messages : 117
Points : 4
Points : 4
Par défaut questions sur la classification CHA

Bonjour,
j'ai un fichier contenat plusieurs données quantitatives( voir pj)
mon but est de réussire à faire une classification dessus.
voici le code que j'ai réussi à faire:
Code :
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
/* importation du fichier*/
proc import datafile="C:\Users\MOI\Desktop\eval_sas.xls"
	out=eval_jeune REPLACE
	DMBS= EXCEL2000;
	mixed = YES;
	getnames =YES;
run;
 
/* on fait une ACP*/
/* on mets les données des circo et des variables dans deux tables diffréntes*/
 
proc princomp DATA=eval_jeune  out=circo outstat=var;
	var var1--var64;
run;
 
proc gplot DATA=circo;
plot prin1*prin2/ href=0 vref=0;
run;
 
/* la CHA est rélisée sur les coordonnées des circo sur les plans factoriels retenus,
les données nécesaires sont donc les projections des circo sur les axes séléctionnés dans l'ACP*/
/* je pense garder 5 axes*/
 
DATA donnesCHA;
SET circo;
keep id prin1-prin4;
run;
 
/* on fait la CHA avec la méthode WARD, c'est elle qui réduit au mieux le biaias des valuers de circo abbérantes*/
 
proc  cluster DATA=donnescha method=ward outtree=arbre;
	id id;
	var prin1-prin4;
run;
 
/* pour choisir les classes*/
 
proc sort DATA=arbre;
	BY _ncl_;
run;
 
DATA graph;
	SET arbre;
	IF(_psf_=. AND _pst2_=.) then DELETE;
run;
 
goptions reset=ALL;
symbol1 i=JOIN v=none c=red;
symbol2 i=JOIN v=none c=blue;
legend1 value=(tick1 'pseudo F' tick2 'pseudo t2');
 
proc gplot DATA=graph;
	plot(_psf_ _pst2_)*_ncl_/ legend=legend1 overlay;
	WHERE 1<_ncl_<16;
run;
quit;
/* on construit le dendogramme*/
proc tree DATA=arbre out=sortie nclusters=4;
	id id;
run;
 
proc print DATA= sortie;
run;
 
proc sort DATA=sortie;
BY cluster;
run;
 
proc print DATA=sortie;
	var id;
	BY cluster;
run;
 
proc sort DATA=sortie;
	BY id;
run;
 
/*proc sort data= var;
	by id;
run;*/
 
proc sort DATA=circo;
	BY id;
run;
 
DATA ensemble;
	merge circo sortie ;
	BY id;
 
	keep id prin1-prin4 cluster;
run;
 
 
DATA annograph;
	SET ensemble;
	x=prin1;
	y=prin2;
	xsys='2';
	ysys='2';
	text=id;
	SELECT(cluster);
		when (1) color='red';
		when(2) color='blue';
		when(3) color='green';
		when(4) color='black';
		otherwise;
	end;
run;
 
goptions reset=ALL;
symbol v=none i=none;
proc gplot DATA=annograph;
	plot y*x / annotate=annograph vref=0 href=0;
	plot prin2*prin1 / href=0 vref=0;
run;
quit;
mes questions:
1) est ce que j'ai ien procéder? j'ai choisi le bon nombre de classes??
2) comment faire pour expliquer mes classes: les vraibles qui les constituent? le pourcentage dessus??...... pour pouvoir qulifier cette classe suivant les varibales qui la constituent
3) comment faire pour afficher mes classes et les varibles sur l même graphe??
Merci beaucoup pour vos réponses
Fichiers attachés
Type de fichier : xls eval_sas.xls (21,0 Ko, 2 affichages)
debutsas est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h55.


 
 
 
 
Partenaires

Hébergement Web