BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
lovedieer
Calcite | Level 5

I have a table with 20 column as flags, their value are Y or N, I want to check how many Y for each records, beside change all Y to 1 and N to 0 and then do the sum, is there any quick way to do sum or count how many Y for each record?

Thanks,

1 ACCEPTED SOLUTION

Accepted Solutions
art297
Opal | Level 21

Here is a way that takes a bit less code:

data have;

  input (x1-x7 y1-y7 z1-z6) ($);

  cards;

Y N Y N Y N Y N Y N Y N Y N Y N Y N Y N

N N N Y Y N N N Y Y N N N N N N N N N N

;

data want;

  set have;

  total=countc(catt(of x1--z6),'Y');

run;

View solution in original post

4 REPLIES 4
stat_sas
Ammonite | Level 13

data want;

set have;

array q{*} q1-q20;

array q_num{20};

cnt_Y=0;

do i=1 to dim(q);

if q{i}='Y' then q_num{i}=1;

else q_num{i}=0;

end;

do i=1 to dim(q);

if q{i}='Y' then cnt_Y+1;

end;

run;

lovedieer
Calcite | Level 5

Thanks. that works well.

art297
Opal | Level 21

Here is a way that takes a bit less code:

data have;

  input (x1-x7 y1-y7 z1-z6) ($);

  cards;

Y N Y N Y N Y N Y N Y N Y N Y N Y N Y N

N N N Y Y N N N Y Y N N N N N N N N N N

;

data want;

  set have;

  total=countc(catt(of x1--z6),'Y');

run;

lovedieer
Calcite | Level 5

Cool!. that's easy.

SAS Innovate 2025: Save the Date

 SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!

Save the date!

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 4 replies
  • 1237 views
  • 3 likes
  • 3 in conversation