Suppose there is a SAS dataset with following values -
Parent Child
A B
B C
D E
F G
G H
H I
and so on…..
This goes onto 1000s of observations/rows.
Now how do we identify from this dataset Grandparents and
Grandchildrens ?

Answers were Sorted based on User's Feedback



Suppose there is a SAS dataset with following values - Parent Child A B B C D E F G G H H I ..

Answer / sumit

Suppose the above dataset name is work.old.
Data new;
Set work.old (first obs = 2);
Run;

Proc sql;
Select Old.parent as grandfather, Old. Child as father,
new.child as grandchild from work.Old as old, work.new as
new
where old.child = new.parent;
quit;

Is This Answer Correct ?    17 Yes 0 No

Suppose there is a SAS dataset with following values - Parent Child A B B C D E F G G H H I ..

Answer / guest

data dx;
infile datalines dsd dlm=',';
input parent :$8. child :$8.;
datalines;
A,B
B,C
D,E
F,G
G,H
H,I
;;;;
run;

data dy(rename=(parent=grandfather child=father)) ;
merge dx(firstobs=2 in =a rename=(child=grandchild
parent=child ))
dx(firstobs=1 in =b );
by child;
if a and b;
run;
proc print;
var grandfather father grandchild;
run;

Is This Answer Correct ?    15 Yes 4 No

Suppose there is a SAS dataset with following values - Parent Child A B B C D E F G G H H I ..

Answer / altumish

A simple self Join:

data old;
input Parent $ Child $;
cards;
A B
B C
D E
F G
G H
H I
I J
J K
J L
P S
;

Proc sql;
Select Old.parent as grandfather, Old.Child as father,
new.child as grandchild from work.Old as old, work.Old as new
where old.child = new.parent;
quit;

Is This Answer Correct ?    1 Yes 0 No

Suppose there is a SAS dataset with following values - Parent Child A B B C D E F G G H H I ..

Answer / jayant

data tet;
input par $ child $;
datalines;
A B
B C
C D
E F
;
run;




data tet1;
set tet;
grand=lag(par);
drop par;
run;

Is This Answer Correct ?    0 Yes 1 No

Suppose there is a SAS dataset with following values - Parent Child A B B C D E F G G H H I ..

Answer / sas@freek

data family;
input parent $ child $;
datalines;
A B
B C
C D
D E
E F
F G
G H
H I
;
run;
data family_new(drop=parent child);
set family;
parent1=lag(parent);
child1=lag(child);
grand_child=child;
if _n_ ge 2;
run;

proc print data=family_new;
var parent1 grand_child;
run;

Is This Answer Correct ?    0 Yes 2 No

Post New Answer

More SAS Interview Questions

what r the job openings SAS for fresher graduates !

0 Answers   TetraSoft, Wipro,


HOW MANY WAYS YOU CAN RETRIEVE THE DATA FROM ORACLE TABLES? WHAT IS ORACLE CLINICAL? HOW IT IS USEFUL?

3 Answers   Accenture, Novartis,


What is the difference between nodup and nodupkey options?

20 Answers   iFlex, Makro, Talwar,


what is sas business intelligence? : Sas-bi

0 Answers  


Will it bother you if the guy at the next desk times the frequency and duration of your bathroom or coffee breaks on the grounds that ?you are getting paid twice as much as he is??

0 Answers   Oracle,






what are the best practices to process the large data sets in sas programming? : Sas-administrator

0 Answers  


What does error:1 mean?

8 Answers   Accenture,


How would you invoke a macro? : sas-macro

0 Answers  


Explain why double trailing @@ is used in input statement?

0 Answers  


What statement do you code to tell SAS that it is to write to an external file? What statement do you code to write the record to the file?

2 Answers   Accenture,


what is sas metadata repository? : Sas-bi

0 Answers  


Best trainer in hyderabad for sas banking.if any one have details pls provide contact details.

1 Answers  


Categories