* Date: Fri, 9 Jan 2004 10:05:26 -0500 . * Reply-To: James Chapman . * Sender: "SPSSX(r) Discussion" . * From: James Chapman . * Subject: Count consecutive zeros across variables . * I have a person/day/hour level date base containing activity counts . * for each hour of a two day (at least) collection period (not the . * same two days for every person). . * I want to add two new variables to each hour (row). The first . * variable says how many zeros there are in the hour (# of minutes of . * no activity). The second variable tells me the largest continuous . * block of zeros (longest continuous duration of no activity). . DATA LIST LIST SKIP=2 /Pers(F2) Date(ADATE) Hours min1 min2 min3 min4 min5 (6F2). BEGIN DATA. The data currently looks like: Pers Date Hours min1 min2 min3 min4 . . . .min60 1 4/5/2003 0 0 0 5 0 5 1 4/5/2003 1 5 10 2 0 0 END DATA. COUNT N_ZERO=MIN1 TO MIN5(0). VECTOR MINUTE=MIN1 to MIN5. COMPUTE #RUN = 0. COMPUTE MAX_RUN = 0. LOOP #MIN_IDX = 1 TO 5. . DO IF (MINUTE(#MIN_IDX) =0). . COMPUTE #RUN = #RUN + 1. . ELSE. . COMPUTE MAX_RUN = MAX(#RUN,MAX_RUN). . COMPUTE #RUN = 0. . END IF. END LOOP. COMPUTE MAX_RUN = MAX(#RUN,MAX_RUN). FORMATS N_ZERO MAX_RUN (F2). LIST.