LENGTH 次指令 (REPEATING DATA 指令)
LENGTH 指定每一個重複資料群組的長度。 預設長度是重複資料群組的開始直欄與 DATA上所指定最後一個變數的結束位置之間的欄數。 (對於每一個輸入觀察值的第一筆記錄, STARTS 指定重複群組的開始直欄。 對於連續記錄,依預設會從直欄 1 或從 CONTINUED上指定的直欄讀取重複群組。)
LENGTH上的規格可以是數字或變數名稱。- 如果在
DATA次指令上指定的最後一個變數未從每個重複群組的最後一個位置讀取,或重複群組的長度在輸入觀察值之間有所不同,則必須使用LENGTH。 - 如果重複群組的長度因輸入觀察值而異,則規格必須是一個變數,其每一個輸入觀察值的值都是該觀察值的重複群組長度。 變數可以在
DATA LIST上定義,或使用轉換指令來建立。 - 如果在
LENGTH上指定的變數值未定義或遺漏輸入觀察值,則程式會顯示警告訊息,並只為該輸入觀察值建置一個輸出觀察值。
範例
* Read only the variable MAKE for each vehicle.
* The data contain two values that are not specified on the
DATA subcommand. The first is in position 9 of the repeating
groups, and the second is in position 10.
INPUT PROGRAM.
DATA LIST FILE=VEHICLE / SEQNUM 2-4 NUMPERS 6-7 NUMVEH 9-10.
REPEATING DATA STARTS=12 /OCCURS=NUMVEH /LENGTH=10
/DATA=MAKE 1-8 (A).
END INPUT PROGRAM.
LENGTH表示每一個重複群組的長度為 10 個直欄。 因為未從每一個重複群組的最後一個位置讀取 MAKE ,所以需要LENGTH。 如先前範例所示,每個重複群組還包括變數 MODEL (位置 9) 和 NUMCYL (位置 10)。DATA指定 MAKE 位於每一個重複群組的位置 1 到 8。 跳過每個重複群組的位置 9 和 10。