Please find the code. data have;
input var1 $20.;
cards;
Happy
Sad
Content
None of the Above
Happy
Sad
Content
None of the Above
Happy
Sad
Content
None of the Above
Happy
Sad
Content
None of the Above
Happy
Sad
Content
None of the Above
Happy
Sad
Content
None of the Above
Content
Content
Content
Content
Content
Content
;
run;
data have;
set have;
rand_ord=RANUNI(8);
if var1='Happy' then var1f=1;
if var1='Sad' then var1f=2;
if var1='Content' then var1f=3;
if var1='None of the Above' then var1f=4;
run;
proc sort data=have;
by var1f rand_ord;
run;
data want(drop=var1f1 var1f2);
set have;
if var1f=3 then do;
if var1f1 ge var1f2 then do;
var1nf=2;
var1f2+1;
end;
else do;
var1nf=1;
var1f1+1;
end;
output;
end;
else do;
var1nf=var1f;
output;
end;
run; Please let us know if it worked for you.
... View more