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
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
* Тема: Нормализация баллов (raw scores).
* Опубликован: ?, перевод: 20.01.2009.
* Автор: Valentim R. Alferes (Университет Коимбра, Португалия), valferes@fpce.uc.pt.
* Перевод: А. Балабанов.
* Размещение: http://www.spsstools.ru/Syntax/Distributions/nrscores.txt (.sps).
* Проверено: SPSS 15.0.0.


* Приведённый синтаксис нормализует значения переменной и может быть использован
* для разных задач, связанных с измерениями (например, в психометрии). 

* Несколько слов о терминологии.

* Нормализация - это тип нелинейного преобразования (преобразование площади под кривой распределения)
* баллов (значений переменной), такого, что распределение преобразованной переменной является нормальным
* (колоколообразным). Накопленные доли в распределении исходной переменной мы рассматриваем как вероятности
* (квантили нормального распределения) находим для них соответствующие z-значения, которые
* преобразуем в нормализованные баллы путём задания желаемого среднего и стандартного отклонения.

* Стандартизация же - это простое линейное преобразование, после которого новая переменная
* имеет среднее = 0 и стандартное отклонение = 1. Чтобы найти стандартизированное значение, 
* надо вычислить z = (X - среднее)/станд. откл. В SPSS это можно сделать либо через меню
* DESCRIPTIVES.../Save standardized values as variables, либо простым синтаксисом:
* DESCRIPTIVES VARIABLES = VAR1 (ZVAR1).
* Заметим, что стандартизация не изменяет формы распределения исходной переменной.

* Из стандартизированных значений можно сконструировать переменную с желаемым
* средним значением и стандартным отклонением с помощью вычисления C=z*ст. откл.+среднее.
* Это тоже вариант линейного преобразования, и результирующие баллы (С) иногда называются конвертированными баллами.

* Работа синтаксиса иллюстрируется на примере из классического учебника:
* Guilford, J. P., & Fruchter, B. (1978). Fundamental statistics
* in psychology and education (6th ed.). New York: McGraw-Hill. 

* В этом примере (табл. 19.2, стр. 479) имеется 83 значения исходных баллов,
* сгруппированных в 15 (20 ? - примеч. перев.) классов (указаны верхние границы эти классов и их частоты).
* В табл. 19.4 (стр. 482), находятся исходные баллы, которые
* авторы учебника Guilford и Fruchter хотели бы нормализовать (преобразовать в T-баллы - T Scores)
* со средним = 50 и стандартным отклонением = 10.

* После выполнения синтаксиса вы получите нормализованные баллы в 
* трёх вариантах: переменная TSCORE1 со значениями, округлёнными до целого,
* переменная TSCORE2 (до 0.5), и переменная TSCORE3 (округление до десятых долей). Обычно
* мы используем один из первых двух вариантов, но это - полностью на ваше усмотрение.


DATA LIST FREE /UPPERLIM (F8.0).
* Укажите перечень исходных баллов, для которых нужно получить нормализованные варианты.
* (для примера - данные табл. 19.4, столбец 1, по Guilford & Fruchter, 1978, стр. 482).
BEGIN DATA
120 125 130 135 140 145 150 155 160 165 170 175 180 
185 190 195 200 205 210 215 220 225 230 235 240
END DATA.
SAVE OUTFILE=OUTF1.

DATA LIST LIST /SCORES(A20) UPPERLIM(F8.1) FREQ(F8.0).
* введите классы наблюдённых значений, их верхние границы и частоты.
* (для примера - данные табл. 19.2, столбцы 1-3, по Guilford & Fruchter, 1978, стр. 479).
BEGIN DATA
130-134  134.5  1
135-139  139.5  0
140-144  144.5  1
145-149  149.5  1
150-154  154.5  2
155-159  159.5  5
160-164  164.5  6
165-169  169.5  5
170-174  174.5  5
175-179  179.5  9
180-184  184.5  11
185-189  189.5  6
190-194  194.5  6
195-199  199.5  6
200-204  204.5  7
205-209  209.5  5
210-214  214.5  5
215-219  219.5  1
220-224  224.5  0
225-229  229.5  1
END DATA.

* Задайте желаемое среднее значение для нормализованных T-баллов (50 - по примеру из Guilford & Fruchter).
COMPUTE MEAN = 50.
* Задайте желаемое стандартное отклонение для T-баллов (10, по тому же примеру).
COMPUTE SD= 10 .

COMPUTE DUMMY=1.
AGGREGATE/OUTFILE=OUTF2/BREAK=DUMMY/N=SUM(FREQ).
MATCH FILES/FILE=*/TABLE=OUTF2/BY DUMMY.
CREATE CUM_F=CSUM(FREQ).
COMPUTE CUM_PRO=CUM_F/N.
COMPUTE Z=IDF.NORMAL(CUM_PRO,0,1).
COMPUTE T_SCORE=Z*SD+MEAN.
FORMATS CUM_F (F8.0) CUM_PRO (F8.3) T_SCORE (F8.1).
* Следующая строка воспроизводит табл. 19.2 (Guilford & Fruchter, 1978, стр. 479).
LIST SCORES UPPERLIM FREQ CUM_F CUM_PRO T_SCORE.

ADD FILES /FILE=*/FILE=OUTF1.
REGRESSION/DEPENDENT T_SCORE/METHOD=ENTER UPPERLIM/SAVE PRED.
COMPUTE TSCORE1=RND(PRE_1).
COMPUTE TSCORE2=RND(2* PRE_1)/2.
COMPUTE TSCORE3=RND(PRE_1*10)/10.
SEL IF (SYSMIS(FREQ)).
COMPUTE RAWSCORE=UPPERLIM.
FORMATS RAWSCORE (F8.0) TSCORE1 (F8.0) TSCORE2 (F8.1) TSCORE3 (F8.1).
* Следующая строка воспроизводит табл. 19.4 (Guilford & Fruchter, 1978, стр. 482).
LIST RAWSCORE TSCORE1 TSCORE2 TSCORE3.