Again, the question is not understood. I guess you want the (0,1) are to be added in each ROW. If so, it is simple. If you want both Pass1 - Pass5 along with TotPass1 - TotPass5 then use the following: data psych; input ID $3. Ques1-Ques10 Score1-Score5; array S Score1 - Score5; array F[5] _temporary_ (65, 70, 60, 62, 68); array P Pass1 - Pass5; array T TotPass1 - TotPass5; do i = 1 to dim(S); P = (S >= F); T + (S >= F); end; output; datalines; 001 1 3 2 4 5 4 3 4 5 4 90 88 92 95 90 002 3 3 . . 3 4 5 5 1 . 64 64 77 72 71 003 . . . . 5 5 4 4 3 3 68 69 80 75 70 004 5 3 4 5 . 5 4 3 3 . 88 77 66 77 67 005 5 4 3 2 1 1 2 3 4 5 92 93 94 95 99 006 4 5 1 3 2 5 3 1 1 1 55 65 71 85 91 007 3 2 2 1 5 4 5 3 2 2 60 70 88 79 82 008 2 1 1 5 5 4 4 2 1 3 65 87 90 60 55 009 1 1 1 3 2 2 3 5 4 4 71 81 91 77 88 010 2 3 3 4 1 5 2 2 3 1 64 69 61 70 70 ; run; if you want only, TotPass1 - TotPass5, you may delete the statement, P = (S >= F);
... View more