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
* (Вопрос) Как можно исключить из рассмотрения наблюдения, чьи значения больше среднего более, чем на 2 станд. отклонения?.

*(Ответ) Размещён в SPSSX-L 29.01.2003. Автор: Raynald Levesque.
* Посетите мой сайт по программе SPSS: http://www.spsstools.net.

***************.
* Метод  1. Добавим среднее и стандартное отклонение переменной в файл данных, затем отберём с помощью SELECT IF.
***************.

GET FILE='c:\\program files\\spsseval\\employee data.sav'.

SORT CASES BY salary.
COMPUTE nobreak=1.
AGGREGATE OUTFILE='c:\\temp\\sal.sav'
	/PRESORTED
	/BREAK=nobreak
	/meansal=MEAN(salary) /sdsal=SD(salary).

MATCH FILES FILE=*
	/TABLE='c:\\temp\\sal.sav'
	/BY=nobreak.

SELECT IF (salary< meansal + 2*sdsal).
EXECUTE.

***************.
* Метод 2. Допустим, нам нужно убрать те наблюдения, которые выходят за рамки среднего +-2 станд. откл.
* Найдём стандартизированные значения для переменной salary, затем сохраним те, которые находятся в пределах 2.
***************.
GET FILE='c:\\program files\\spss\\employee data.sav'.

DESCRIPTIVES
  VARIABLES=salary  /SAVE
  /STATISTICS=MEAN STDDEV .

SELECT IF ABS(zsalary) < 2.
EXECUTE.