The following step reads the datalines and creates one observation for each row in the details part of your data. Normal group-processing should be sufficient to create the required output.
data have;
length
Household_identity $ 10
Type $ 1
No_of_members 8
Member_no 8
H_Indicator $ 1
DOB 8
Gender $ 1
M_status $ 1
Edu_level 8
E_Status $ 2
M_Income 8;
;
informat dob date9.;
format dob date9.;
retain Household_identity Type No_of_members;
infile datalines delimiter=",";
input @;
if countc(_infile_, ',') = 2 then do;
input Household_identity Type No_of_members;
end;
else do;
input Member_no
H_Indicator
DOB
Gender
M_status
Edu_level
E_Status
M_Income
;
output;
end;
datalines;
A123456789,A,3
1,Y,15Feb1960,M,M,3,FT,55000
2,N,3Jun1965,F,M,3,UE,0
3,N,24Jan1988,M,S,2,NA,3000
A135790234,B,1
1,Y,19Oct1944,F,D,0,NA,3000
B234523456,A,2
1,Y,30Jun1978,F,M,1,PT,4000
2,N,21May1975,M,M,2,FT,30000
;
run;
... View more