BookmarkSubscribeRSS Feed
dennis_oz
Quartz | Level 8

Hi,

I have a dataset like below

name  indicator1 indicator2  indicator3 indicator4 - --- indicator65

danny   1               .               1               1                    .

danny    .               1     .        .                   .                  1

danny    1               1              1               1                     1

sam       1               .               .               .                      .

sam       1

output

name  indicator1 indicator2  indicator3 indicator4 - --- indicator65

danny  1                  1                  1      1               .

sam     1                  .                   .      .     .

please help

2 REPLIES 2
RamKumar
Fluorite | Level 6

Try this,

data trans;

   input Name $ Field1-Field5 ;

   cards;

danny  1   .        2         3             .        

danny .   4        .         3             5                 

sam  .   4        .         4             5                 

sam  1   .        2         4             .        

;;;;

   run;

data flat;

   update trans(obs=0) trans;

   by Name;

   run;

proc print;

   run;

I seen a similar post yesterday in this forum as well.

Loko
Barite | Level 11

Hello,

Another solution:

data have;

input name $ indicator1 indicator2  indicator3 indicator4 indicator5;

datalines;

danny 1 . 1 1 .

danny . 1 . . 1

danny 1 1 1 1 1

sam 1 . . . .

sam . . . . 1

;

proc means data=have nway ;

var indicator1-indicator5;

class name;

output out=want (drop=_type_ _freq_) max=;

run;

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

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
  • 2 replies
  • 875 views
  • 0 likes
  • 3 in conversation