Dear All I'm using SAS university edition. I'll outline my problem by first outlining my data. I've used the array command to create a variable for each week (in 2008) displaying whether an observation lives in place A or B. As my dataset is confidentiel I've created a quick look-a-like-version here. As you see from the picture each observation can possibly move back and forth. I'm wondering whether it's possible, using the array command, to create new variables for each sequence respectively and in that variable for the specific sequence report the length of the sequence. In the example above there would at most be 3 new variables (lets call them sequence1, sequence2 and sequence3). For the first observation sequence1 = 2, sequence2 = 3 and sequence3= 2. For the second observation sequence1 = 8, sequence2 = 0 and sequence3= 0. So far i've only succeed in capturing the length of the first sequence by the following code data newdata (compress=binary); set olddata; array weeks (52) $2; endB=.; periodB=.; if indicatorB = 1 then /* where indicatorB shows whether or not B is present within any of the weeks variables */ do i=startB to 52 by 1 UNTIL(spell(i) ne 'B'); /* where startB is a variable telling me in what week we first observe B (between 1-52) */ if weeks(i) in ('B') then endB = i; end; periodB=endB-startB+1; run; Hope you can help me update my code so I can capture the different lengths of multiple sequences Kind regards Marius
... View more