SAS - proc means con macro

   
Vista:

proc means con macro

Publicado por Juan Jose  (1 intervención) el 20/04/2010 22:26:47
Tengo el siguiente reto
De una serie de tablas necesito sumar sus campos numerico pero la estructura de las tablas es diferente , el procedimiento que debo hacer tienen que ser uno para todas para que despues se corra en una macro entonces que debo hacer si mis tablas son diferentes y quiero sumar los datos numericos , como puedo hacer eso para todas?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

proc means con macro

Publicado por sTv steve.chavezvaldivia@axa.es (3 intervenciones) el 12/04/2011 15:34:22
/* Creamos 3 tablas con diferentes campos, nombres y numero */
data T1;
do A=1 to 10;
B=A+5;
STV="tabla1";
output;
end;
run;

data T2;
do C=1 to 10;
D=C+5;
E=D+5;
STV="tabla2";
output;
end;
run;

data T3;
do F=1 to 10;
G=F+5;
H=G+5;
J=H+5;
STV="tabla3";
output;
end;
run;

/* creo 3 macrovariable, q pondra: nombre de la tabla y seguido el nombre de los campos a calcular */
%let TABLA1=T1 A B;
%let TABLA2=T2 C D E;
%let TABLA3=T3 F G H J;
%let NTABLA=3; * esto me dira el numero de tablas q tengo q analizar;

/* aqui hago una macro que va hacer X means por cada tabla */
%macro stv1;
%do i=1 %to &NTABLA;
proc means data=%scan(&&TABLA&i..,1) noprint nway;
class stv;
var %scan(&&TABLA&i..,2) %scan(&&TABLA&i..,3) %scan(&&TABLA&i..,4) %scan(&&TABLA&i..,5);
output out=RESULTADO&i (drop=_type_ _freq_) sum= ;
run;
%end;
%mend;
%stv1;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar