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;
.
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
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.