SAS Data Integration Studio, DataFlux Data Management Studio, SAS/ACCESS, SAS Data Loader for Hadoop and others

recode likert response to binary

Reply
Regular Learner
Posts: 1

recode likert response to binary

My original output shows as 

(1)Large

(2)average

(3)small

(4)very small

 

and I want to recode the "large" and "average" as 1

and "small" and "very small" as 0

all others will be missing. 

 

How do I do this in sas? Thanks!

Occasional Contributor
Posts: 13

Re: recode likert response to binary

[ Edited ]

While you could use a set of if-then-else statements to accomplish that, here's an alternative to that approach:

 

 

data ds1;
    length score $20;
    input subjid 1 score $ 4-13;

datalines;
1  Large
2  average
3  small
4  very small
5  Large
6  ittybitty
7  small
8  very small
9  not large
10 average
11 small
12 very small
;
run;

proc format;
    invalue likertf "Large","average"=1
		    "small","very small"=0
		    other=.;
run;

data ds2;
    set ds1;

    likertnum = input(score,likertf.);
run;

 

Ask a Question
Discussion stats
  • 1 reply
  • 172 views
  • 0 likes
  • 2 in conversation