HelloI want to merge these data with a macro.I also wish to create a variable call locate such that as it is stacking the data set ampute_1 - ampute_20; this variable that I will call "LOCATE" should be 1 for all all data from ampute_1, 2 for all data from
ampute_2 etc
THat is
Variable
X y Locate
1 2 1
3 2 1 {ampute_1}
3 1 1
2 2 2
1 4 2
4 1 2{ampute_2}
ETC
This is the code that need correction.
data impute_t_&p;
set ampute_1 - ampute_20;
if Sim lt 4 then delete;
run;
Please try the below code,
data ampute_1;
input X y;
cards;
1 2
3 2
3 1
;
data ampute_2;
input x y;
cards;
2 2
1 4
4 1
;
%macro test();
data ampute_final;
set
%do i = 1 %to 2;
ampute_&i(in=a&i)
%end;
;
%do i = 1 %to 2;
if a&i then locate=&i;
%end;
run;
%mend;
%test();
Thanks,
Jagadish
Please try the below code,
data ampute_1;
input X y;
cards;
1 2
3 2
3 1
;
data ampute_2;
input x y;
cards;
2 2
1 4
4 1
;
%macro test();
data ampute_final;
set
%do i = 1 %to 2;
ampute_&i(in=a&i)
%end;
;
%do i = 1 %to 2;
if a&i then locate=&i;
%end;
run;
%mend;
%test();
Thanks,
Jagadish
I want introduce u in this macro such that the last data should be by U:
.........
........
Matrix=matrix//temp;
end; matrix=matrix[2:nrow(matrix),];
create impute_tt_&u var{obs censored time Y timeS X sim };
append from matrix;
quit;
%end;
data impute_t_&p;;
set
%do u = 1 %to 5;
impute_tt_&u(in=a&u)
%end;
;
%do u = 1 %to 5;
if a&u then locate=&u;
%end;
run;
.
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and save with the early bird rate—just $795!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.