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
42
43
44
45
* Цель: Выполнить регрессию жалованья на возраст и пол, а затем - 
* получить таблицу предсказанных значений для людей обоего пола всех возрастов 
  от 20 до 65 лет.
* Автор: Raynald Levesque, 13.03.2001.

* Создадим шаблонные наблюдения для таблицы (с возрастами от 20 до 65 и полами 1 и 2).
INPUT PROGRAM. 
LOOP sex=1 TO 2.
LEAVE sex.
LOOP age=25 TO 65.
XSAVE OUTFILE='c:\\temp\\dummy cases.sav'.
END CASE.
END LOOP.
END LOOP.
END FILE.
END INPUT PROGRAM.
EXECUTE.

GET
  FILE='C:\\Program Files\\SPSS\\Employee data.sav'.
COMPUTE age=CTIME.DAYS(DATE.DMY(1,1,1998)- bdate)/365.25.
AUTORECODE VARIABLES gender /INTO sex.

* Добавим шаблонные наблюдения.
ADD FILES /FILE=*
 /FILE='C:\\Temp\\dummy cases.sav'
 /IN=source01.

* Выполним регрессию без учёта шаблонных значений
* (строго говоря, в данном случае шаблонные значения не были бы учтены и так, 
  поскольку для них пусто значение salary - примеч. перев.).
* При этом прогноз сохраним и для шаблонных значений тоже.
REGRESSION
  /SELECT= source01 EQ 0
  /MISSING LISTWISE
  /STATISTICS COEFF OUTS R ANOVA
  /CRITERIA=PIN(.05) POUT(.10)
  /NOORIGIN
  /DEPENDENT salary
  /METHOD=ENTER age sex
  /SAVE PRED .

* Сохраним лишь шаблонные значения и прогнозы для них.
SELECT IF source01=1.
MATCH FILES FILE=* /KEEP age sex pre_1.