<<
>>

2.5.1.1. Основные функции и операторы команд COMPUTE и IF

Арифметические операторы +, -, *, / в этих командах употребляются обычным порядком, две звездочки ** означают возведение в степень.

Результатом логической операции будет 1, если логическое выражение истинно, и 0, если выражение ложно (логическое выражение (v9 > 30) равно 1, если v9 > 30, и равно 0, если v9 < 30).

Допустимы операторы сравнения <, <=, <, <=, ~=, где последний оператор означает «не равно» и логические операторы — отрицание (not), & - логическое «и» (and) и логическое «или» | (or).

При вычислении логического выражения, если порядок выполнения не задан скобками, сначала выполняются арифметические операции, затем сравнения, затем логические операции.

Приоритетность выполнения опе-раций естественна - так она обычно определяется в математике и языках

программирования. Но следует заметить, что операции сравнения находятся на одном уровне. В частности значение выражения (5 > 3 > 2), будет равно 0 («ложь»), так как в соответствии с порядком выполнения операций в этом выражении (5 > 3 > 2) = ((5 > 3) > 2) = (1 > 2) = 0!

Наряду с арифметическими операторами в арифметических выражениях могут использоваться логические выражения, что позволяет достаточно компактно осуществлять преобразования данных:

COMPUTE x = (v9 > 30) + v10 > x + z.

Эта хитроумная команда превращает вначале выражение (v9 > 30) в 0 или 1 в зависимости от его истинности, затем производит вычисления левой ((v9 > 30) + v10) и правой (x + z) частей неравенства и в зависимости от результата сравнения присваивает переменной x значение 0 или 1.

Кроме того, имеется возможность использовать:

Арифметические функции, такие как: ABS - абсолютное значение, RND - округление, TRUNC - целая часть, EXP - экспонента, LN - натуральный логарифм, и др. Например,

COMPUTE LNv9 = LN(V9).

Переменной LNv9 присваиваются логарифмы значений переменной V9.

Статистические функции: SUM - сумма, MEAN - среднее, SD - стандартное отклонение, VARIANCE - дисперсия, MIN - минимум и MAX - максимум.

Например, команда

COMPUTE S = MEAN (d1 to d10).

вычисляет переменную, равную среднему валидных (т. е. определенных) значений переменных d1, ..., d10.

Функции распределения, например:

CDF.CHISQ(q, a) - распределения хи-квадрат, CDF.EXP(q, a) - экспоненциального распределения, CDF.T(q, a) - Стьюдента, и др. (q - аргумент функции распределения, a - параметр соответствующего распределения). Команда

COMPUTE Y = CDF.T(X, 10).

Эти функции могут быть использованы для проверки предположения о виде распределения переменной. Например, если мы для расчета переменной используем функцию распределения Стьюдента с 10 степенями свободы и построим значения от переменной X, которая распределена по Стью- денту с 10 степенями свободы, то получим переменную Y, равномерно распределенную на отрезке (0, 1).

Таким образом, если есть подозрение, что Х имеет именно такое распределение, то можно проверить это предположение, построив переменную Y и проверив ее на равномерность распределения на отрезке (0, 1).

То же самое можно предпринять для проверки других видов распределений.

Обратные функции распределения, например:

IDF.CHISQ(p, a) - обратная функция распределения (по сути дела, квантиль) хи-квадрат, IDF.F(p, a, b) - квантиль распределения Фишера, IDF.T(p, a) - квантиль распределения Стьюдента, и др. (p - вероятность, a и b - параметры соответствующего распределения). Например,

COMPUTE Z = IDF.CHISQ(X, 10).

вычисляет квантиль порядка X распределения хи-квадрат с 10 степенями свободы. Такие функции полезны для вычисления значимости статистик для подмножеств исследуемого множества, например значимости отклонения среднего возраста по городам региона, в котором произведен сбор данных.

Датчики случайных чисел, например:

RV.LNORMAL(a, b) - датчик лог-нормального распределения.

RV.NORMAL(a, b) - датчик нормального распределения,

RV.UNIFORM(a, b) - датчик равномерного распределения (a, b - параметры соответствующего распределения).

Функция, дающая значения переменной на предыдущем объекте LAG.

Пример использования (см. рис. 1.1, данные «Проблем и жалоб»):

COMPUTE age1 = LAG(age).

COMPUTE age2 = LAG(age, 3).

EXECUTE.

Указанное преобразование осуществляет сдвиг информации, показанный в табл. 2.1. В скобках второй параметр задает длину лагового сдвига.

Таблица 2.1

Сдвиг, произведенный функцией LAG (данные «Проблем и жалоб») N Анкеты Пол (Sex) Возраст (Age) Возраст (Age1) Возраст (Age2) 1 1 20 2 1 25 20 3 2 34 25 4 1 18 34 20

Функция полезна для анализа временных рядов, при анализе анкетных данных - для поиска повторов объектов и других вспомогательных операций.

Логические функции :

RANGE(v, a1, b1, a2, b2, ...) принимают значение 1, если значение V попало хотя бы в один из интервалов [a1, b1], [a2, b2], и 0 - в противном случае.

ANY(v, a1, a2, ...) принимают значение 1, если значение V совпало хотя бы с одним из значений a1, a2, . и 0 - в противном случае.

Кроме того, в пакете имеются строчные функции, функции обработки данных типа даты и времени.

<< | >>
Источник: Ковалева Г.Д., Ростовцев П.С.. Анализ социологических данных с применением статистического пакета SPSS. 2002

Еще по теме 2.5.1.1. Основные функции и операторы команд COMPUTE и IF:

  1. 2.5.1. Команды COMPUTE и IF
  2. 6. Сопряженный оператор. Условия существования сопряженного оператора. Замкнутость сопряженного оператора. Сопряженный оператор к ограниченному оператору и его норма.
  3. 1. Линейные операторы в линейных нормированных пространствах. Равносильность непрерывности и ограниченности линейного оператора. Понятие нормы ограниченного оператора. Различные формулы для вычисления норм. Примеры линейных ограниченных операторов.
  4. 4. Ядро оператора. Критерий ограниченности обратного оператора. Теоремы об обратном операторе
  5. 2. Теорема Шаудера о полной непрерывности сопряженного оператора. Уравнения первого и второго рода с вполне непрерывными операторами. Теорема о замкнутости области значений оператора
  6. 2. Пространство линейных непрерывных операторов и его полнота относительно равномерной сходимости операторов
  7. 5. Примеры обратных операторов. Обратимость операторов вида (I - A) и (A - C).
  8. 1. Вполне непрерывные операторы и их свойства. Операторы Фредгольма и Гильберта-Шмидта
  9. 2.5. Основные команды преобразования данных
  10. 2.4.4. Основные команды описания данных
  11. 5. Существование собственного значения у вполне непрерывного оператора в гильбертовом пространстве. Наибольшее и наименьшее собственные значения. Спектральное разложение самосопряженных операторов. Теорема Гильберта-Шмидта о разложении по собственным векторам
  12. 2.3.1. Основные команды меню SPSS верхнего уровня