Читаем файл ASCII с ПОВТОРЯЮЩИМИСЯ блоками данных
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | * Конструируем файл, в котором каждое наблюдение представляет собой один автомобиль, распространяя, при этом, информацию о домохозяйстве на каждое наблюдение. INPUT PROGRAM. DATA LIST / SEQNUM 2-4 NUMPERS 6-7 NUMVEH 9-10. REPEATING DATA STARTS=12 /OCCURS=NUMVEH /DATA=MAKE 1-8 (A) MODEL 9 (A) NUMCYL 10. END INPUT PROGRAM. BEGIN DATA 1001 02 02 FORD T8PONTIAC C6 1002 04 01 CHEVY C4 1003 02 03 CADILAC C8FORD T6VW C4 END DATA. LIST. * Конструируем набор данных с записями о числе детей у родителя, датах и возрастах их вакцинаций. INPUT PROGRAM. DATA LIST / PARENTID 1 DATE 3-6 NCHILD 8. REPEATING DATA STARTS=9 /OCCURS=NCHILD /DATA=BIRTHDAY 2-5 VACDATE 7-10. END INPUT PROGRAM. COMPUTE AGE=DATE - BIRTHDAY. COMPUTE VACAGE=VACDATE - BIRTHDAY. DO IF PARENTID NE LAG(PARENTID,1) OR $CASENUM EQ 1. COMPUTE CHILD=1. ELSE. COMPUTE CHILD=LAG(CHILD,1)+1. END IF. FORMAT AGE VACAGE CHILD (F2). BEGIN DATA 1 1987 2 1981 1983 1982 1984 2 1988 1 1979 1984 3 1988 3 1978 1981 1981 1986 1983 1986 4 1988 1 1984 1987 END DATA. LIST. |
Related pages
...