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
46
47
48
49
50
51
SPSS AnswerNet
Solution ID:	 	100000632	
Product:	 	SPSS Base 	
Использование дат в команде TABLES 

Вопрос. 
У меня есть переменная даты, для которой я хочу подсчитать среднее и станд. отклонение.
Когда я строю таблицу, я получаю среднее, но стандартное отклонение рассчитывается
неправильно. Я получаю либо звёздочки, либо достаточно большое число. Как мне подсчитать
стандартное отклонение из переменной даты?

Ответ. 
Следующий синтаксис показывает, как построить таблицу со средней датой и 
стандартным отклонением от средней даты. 
* Вот пример данных. Допустим, мы хотим получать среднее и стандарт в днях по 
* переменной DT, группируя значения по переменной VARA.

DATA LIST fixed / dt 1-8 (adate) vara 10. 
BEGIN DATA 
06/11/50 1 
11/17/53 1 
01/19/56 2 
08/26/59 2 
END DATA. 
* Во-первых, мы используем команду AGGREGATE чтобы построить переменную со 
* стандартным отклонением переменной DT. Затем мы можем "подшить" эту переменную
* к исходному файлу данных. 

AGGREGATE outfile=temp.sav / break=vara 
/sddt=sd(dt). 
MATCH FILES file=* / table=temp.sav / by vara. 

* Поскольку новая переменная (SDDT) имеет единицы измерения секунды, 
воспользуемся командой COMPUTE, чтобы перевести её в дни посредством
* функции CTIME.DAYS. 

COMPUTE sddt=trunc(ctime.days(sddt)). 
EXECUTE. 
FORMATS sddt (f5.0). 
* Далее немного косметической работы. 

VARIABLE LABELS dt 'Средняя дата' 
sddt 'Стандартное отклонение в днях' . 
* Теперь построим таблицу. Используем переменные DT и SDDT.
* Хотя SDDT представляет собой стандартное отклонение, воспользуемся
* статистикой MEAN. Нам просто нужно отобразить её значение, а поскольку
* для одного и того же значения переменной VARA значение SDDT одинаковое, 
* мы можем использовать MEAN (среднее).
TABLES observation=dt sddt 
/table=dt+sddt by vara 
/statistics mean(dt'') mean(sddt'').