1136 %INC'C:\Users\tliberti\Desktop\Ampoules\Macro dscrétisation\xmacro.sas';
3365 %INC'C:\Users\tliberti\Desktop\Ampoules\Macro dscrétisation\treedisc.sas';
7247 libname BIB 'C:\Users\tliberti\Desktop\Ampoules\Macro dscrétisation\bibformat';
NOTE: Libref BIB was successfully assigned as follows:
Engine: V9
Physical Name: C:\Users\tliberti\Desktop\Ampoules\Macro dscrétisation\bibformat
7248 LIBNAME BIBMACRO 'C:\Users\tliberti\Desktop\Ampoules\Macro dscrétisation';
NOTE: Libref BIBMACRO was successfully assigned as follows:
Engine: V9
Physical Name: C:\Users\tliberti\Desktop\Ampoules\Macro dscrétisation
7249 OPTIONS SASMSTORE=BIBMACRO MSTORED;
ods output on;
7255 ods listing;
7256 %MACRO DISCRETISATION;
7257 (FICHIER=infos3,TARGET=ctxpc,LISTVAR=dcapital ,FEUILLE=100, PREFIX=_D, BIBFORMAT=BIB)/STORE
7257 ! ;
7258 %LET N=1;
7259 %LOCAL VAR;
7260 %LET VAR=%SCAN(&LISTVAR,&N,%STR( ));
7261 DATA &FICHIER._DISCRET;
7262 SET &FICHIER (KEEP=ident &TARGET &LISTVAR);
7263 RUN;
7264 %DO %WHILE(&VAR^=);
7265 %TREEDISC( DATA=&FICHIER, DEPVAR=&TARGET, ORDINAL=&VAR,
7266 OUTTREE=TRD, LEAF=&FEUILLE, MAXDEPTH=1,
7267 OPTIONS=NOFORMAT, TRACE=NONE);
7268 %TREEDISC( INTREE=TRD, CODE='ARBRE.CODE');
7269
7270 DATA _NULL_;
7271 SET trd;
7272 CALL SYMPUT("nb",_N_);
7273 RUN;
7274
7275 %IF &NB >2 %THEN %DO;
7276 /*Test pour éliminer les variables non découpées*/
7277
7278 DATA &FICHIER._DISCRET;
7279 SET &FICHIER._DISCRET;
7280 %INC 'ARBRE.CODE';
7281 &PREFIX&VAR=NODE_;
7282 RUN;
7283
7284 PROC FREQ; TABLES &var * ⌖
7285 PROC FREQ; TABLES &var * &prefix&var/LIST OUT=modal;
7286 PROC SORT DATA=modal; BY &prefix&var DESCENDING &var;
7287 RUN;
7288
7289 DATA plages (KEEP= etiq plage &prefix&var);
7290 SET modal;
7291 BY &prefix&var;
7292 RETAIN etiq;
7293 LENGTH etiq $92;
7294 IF FIRST.&prefix&var THEN etiq=" ";
7295 etiq=COMPRESS(&var)!!" "!!etiq;
7296 IF LAST.&prefix&var THEN DO;
7297 IF LENGTH(etiq)>1 THEN plage=COMPRESS(FIRST(etiq)!!" -"!!SUBSTR(etiq,LENGTH(etiq),1));
7298 ELSE plage=COMPRESS(etiq);
7299 OUTPUT;
7300 END;
7301 RUN;
7302
7303 DATA format_chaid;
7304 SET plages END=fin;
7305 RETAIN etiq2;
7306 LENGTH etiq2 $92;
7307 etiq2=" "!!COMPBL(plage)!!' ="'!!COMPBL(etiq)!!'"'!!COMPBL(etiq2);
7308 IF fin THEN CALL SYMPUT("FORMAT",ETIQ2);
7309 RUN;
7310
7311
7312 PROC FORMAT LIB=&bibformat;
7313 VALUE &prefix&var._&format;
7314 RUN;
7315
7316 %END;
7317 %LET N=%EVAL(&N+1);
7318 %LET VAR=%SCAN(&LISTVAR,&N,%STR( ));
7319 %END;
7320 %END;
ERROR: There is no matching %DO statement for the %END. This statement will be ignored.
7321 %MEND DISCRETISATION;
7322 %DISCRETISATION;
NOTE: Line generated by the invoked macro "DISCRETISATION".
1 (FICHIER=infos3,TARGET=ctxpc,LISTVAR=dcapital ,FEUILLE=100, PREFIX=_D,
-
180
1 ! BIBFORMAT=BIB)/STORE;
ERROR 180-322: Statement is not valid or it is used out of proper order.
WARNING: Apparent symbolic reference LISTVAR not resolved.
WARNING: Apparent symbolic reference LISTVAR not resolved.
WARNING: Apparent symbolic reference FICHIER not resolved.
NOTE: Line generated by the invoked macro "DISCRETISATION".
3 DATA &FICHIER._DISCRET; SET &FICHIER (KEEP=ident &TARGET &LISTVAR); RUN;
- -
22 200
200
ERROR 22-322: Syntax error, expecting one of the following: un nom, une chaîne entre guillemets,
/, ;, _DATA_, _LAST_, _NULL_.
ERROR 200-322: The symbol is not recognized and will be ignored.
3 ! DATA &FICHIER._DISCRET; SET &FICHIER (KEEP=ident &TARGET &LISTVAR); RUN;
-
22
WARNING: Apparent symbolic reference FICHIER not resolved.
NOTE 137-205: Line generated by the invoked macro "DISCRETISATION".
3 DATA &FICHIER._DISCRET; SET &FICHIER (KEEP=ident &TARGET &LISTVAR); RUN;
-
22
ERROR 22-322: Syntax error, expecting one of the following: un nom, une chaîne entre guillemets,
;, END, INDSNAME, KEY, KEYS, NOBS, OPEN, POINT, _DATA_, _LAST_, _NULL_.
ERROR 22-322: Syntax error, expecting one of the following: +, =.
NOTE: Line generated by the invoked macro "DISCRETISATION".
3 DATA &FICHIER._DISCRET; SET &FICHIER (KEEP=ident &TARGET &LISTVAR); RUN;
-
76
ERROR 76-322: Syntax error, statement will be ignored.
ERROR: Undeclared array referenced: FICHIER.
WARNING: Apparent symbolic reference TARGET not resolved.
WARNING: Apparent symbolic reference LISTVAR not resolved.
ERROR: Nom FICHIER non attribué.
NOTE: The SAS System stopped processing this step because of errors.
NOTE: L'étape DATA used (Total process time):
real time 0.01 secondes
cpu time 0.01 secondes
WARNING: Apparent symbolic reference LISTVAR not resolved.
ERROR: A character operand was found in the %EVAL function or %IF condition where a numeric
operand is required. The condition was: &VAR^=
ERROR: The condition in the %DO %WHILE loop, &VAR^=, yielded an invalid or missing value, . The
macro will stop executing.
ERROR: The macro DISCRETISATION will stop executing.
Partager