1 pièce(s) jointe(s)
Tables qui comptent les valeurs manquantes
Bonsoir,
je bloque sur un erreur bizarre, je veux créer des tables qui comptent les valeurs manquantes mais je suis bloqué sur un erreur qui apparaître seulement pour une seule table !!!!!!!!!!!!
Voici le code et l'erreur
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
| %macro val_manquantes(BIB,TAB,ENV);
/*proc sql noprint;
select name into:list_var separated by ' ' from dictionary.columns
where upcase(libname)="&BIB." and upcase(memname)="&TAB.";
quit;
*/
/* Créer une macro variable list_varnmiss contenant la liste des variables de la table &BIB..&TAB. concaténées à nmiss() */
proc sql noprint;
select cat('nmiss(', strip(name), ') as ', strip(name), ' ') into:list_varnmiss separated by ','
from dictionary.columns
where upcase(libname)="&BIB." and upcase(memname)="&TAB.";
quit;
/* Calculer le nombre des valeurs maquantes par BO */
proc sql;
create table WORK.VALEURSCOMPTEES_&TAB. as select distinct
cat(LB_BO,'_VAL_MANQUANTE' ) as STATS,
LB_BO,DT_IMAGE,&list_varnmiss.
from &BIB..&TAB.
group by STATS;
quit;
/* Creer une macro variable list_vartotaux contenant la liste des variables de la table &BIB..&TAB. concaténées à count() */
proc sql noprint;
select cat('count( ID_CONTRAT) as ', strip(name), ' ') into:list_vartotaux separated by ','
from dictionary.columns
where upcase(libname)="&BIB." and upcase(memname)="&TAB.";
quit;*/
/* Calculer le nombre total d'observations des variables par BO */
/* proc sql;
create table WORK.VALEURSCOMPTEES1_&TAB. as select
cat(LB_BO,'_TOT' ) as STATS
,&list_vartotaux.
from &BIB..&TAB.
group by STATS;
quit;
/* Concatener les deux tables de calcul des valeurs manquantes et de calcul des totaux */
Data Valeurs_mq_&TAB._&ENV.;
set WORK.VALEURSCOMPTEES_&TAB. WORK.VALEURSCOMPTEES1_&TAB.;
run;
%mend;
%val_manquantes(BUD_MOAR,T_FLUX,R); |
Pièce jointe 484197