create macros---you have 365 number of data and you need to
merge it throw the macros,,,,,,

data file1;
input a @@;
cards;
1 2 3 4
;
run;

data file2;
input a @@;
cards;
5 6 7 8
;
run;
data file3;
input a @@;
cards;
9 10 11 12
;
run;data file4;
input a @@;
cards;
13 14 15 16
;
run;

Answers were Sorted based on User's Feedback



create macros---you have 365 number of data and you need to merge it throw the macros,,,,,, data..

Answer / jugaadu

Sorry missed the data step here is the corrected Version;


%MACRO Data_Create;
%Do i = 1 %to 365;
DATA file&i;
INPUT a @@;
CARDS;
4*&i-3 4*&i-2 4*&i-1 4*&i
;
RUN;
%MEND;

%Data_Create;

Is This Answer Correct ?    3 Yes 2 No

create macros---you have 365 number of data and you need to merge it throw the macros,,,,,, data..

Answer / venkat

%macro merging(f,x);
%do i=1 %to %eval(&x-1);
data &f&n;
merge &f&n &f%eval(&i+1);
by a;
run;
%end;
%mend merging;
%merging(file,4);

Is This Answer Correct ?    1 Yes 1 No

create macros---you have 365 number of data and you need to merge it throw the macros,,,,,, data..

Answer / ashutosh

%macro mydata(my,n);
data XXX;
merge
%do i=1 %to &n;
&my&i
%end;
;
by a;
run;
%mend;
%mydata(file,4);

Is This Answer Correct ?    0 Yes 0 No

create macros---you have 365 number of data and you need to merge it throw the macros,,,,,, data..

Answer / singh.naveen409

%macros mydata(my,n);
data www;
set
%do i=1 %to &n;
&my&i
end;
;
run;
%mend;
%mydata(file,4);

Is This Answer Correct ?    3 Yes 4 No

create macros---you have 365 number of data and you need to merge it throw the macros,,,,,, data..

Answer / vijay

%MACRO mer;
DATA file_all_365;
MERGE
%DO i=1 %TO 365;
file&i
%END;;
RUN;
%MEND;

%MER;

Is This Answer Correct ?    0 Yes 1 No

create macros---you have 365 number of data and you need to merge it throw the macros,,,,,, data..

Answer / jugaadu

%MACRO Data_Create;
%Do i = 1 %to 365;
INPUT a @@;
CARDS;
4*&i-3 4*&i-2 4*&i-1 4*&i
;
RUN;
%MEND;

%Data_Create;

Is This Answer Correct ?    0 Yes 4 No

Post New Answer

More SAS Interview Questions

There are 200 observations in a dataset, i want to pull out the observation no's 100, 150,180,190 by using Proc SQL? How you can get it?

5 Answers  


data data1; input dt account; format dt date9.; cards; 1745 1230 1756 1120 1788 1130 1767 1240 ; data data2; input startdt enddt total; format startdt date9. enddt date9.; cards; 1657 1834 12300 1557 1758 16800 1789 1789 12300 1788 1345 12383 1899 1899 13250 ; proc sql; create table data3 as select * from data1 as x left join data2 as y on x.dt>=y.startdt and x.dt<=y.enddt; quit; Here, we are getting cartision product. But,I want left join report consisting of this program. It should not get duplicate values. you can modify the program also.

0 Answers  


What is the command used to find missing values?

0 Answers  


what are some problems you might encounter in processing missing values? In data steps? Arithmetic? Comparisons? Functions? Classifying data? : Sas programming

0 Answers  


what is sas and what are the functions? : Sas-administrator

0 Answers  


what is the diff b/w verification validation in sas

3 Answers   SAS,


how to perform paired t-test using Base/SAS & SAS/Stat?

2 Answers  


what do you mean by data staging area? : Sas-di

0 Answers  


how can you create zero observation dataset? : Sas programming

0 Answers  


how will you locate the sas platform applications? : Sas-bi

0 Answers  


Describe how you would pass data to macro.

3 Answers  


How do you debug and test your SAS programs?

0 Answers   Quintiles,


Categories