8.1.1 Формулировка численных выражений
Для построения численных выражений можно применять следующие арифметические операторы:
Арифметические операторы
+ |
Сложение |
- |
Вычитание |
* |
Умножение |
/ |
Деление |
** |
Возведение в степень |
С помощью арифметических операторов в численных (арифметических) выражениях можно задавать такие основные действия, как сложение и вычитание.
Так как структура выражений может быть сложной, следует учитывать следующие приоритеты арифметических операторов:
Приоритет |
Оператор |
Значение |
1 |
() |
Оператор скобок |
2 |
** |
Возведение в степень |
3 |
* |
Умножение |
|
/ |
Деление |
4 |
+ |
Сложение |
|
— |
Вычитание |
Операции более высокого приоритета выполняются раньше операций с более низким приоритетом; приоритет 1 наивысший, а 4 — самый низкий. Далее на нескольких типичных примерах показано, на что следует обращать внимание при записи численных выражений. Если вы хотите выразить только что вычисленное изменение кровяного давления в процентах от исходного значения, надо составить следующую команду:
COMPUTE rrsdiff = (rrsl - rrsO) / rrs0 * 100 .
В этой формуле выполняются операции трех разных видов, имеющие разные приоритеты. Так, умножение и деление выполняются всегда перед сложением и вычитанием, если только, как в данном примере, скобки не определяют другую последовательность выполнения.
Если рост (в см) записан в переменной gr, и вы хотите определить на его основе нормальный вес, который обычно равен росту в см минус 100, команда, которая создает для этой величины новую переменную, будет следующей:
COMPUTE ng = gг - 100 .
Если же требуется вычислить избыточный вес как разницу фактического веса, который хранится в переменной gew, и этой новой величины, для этого служит команда
COMPUTE uegew = gew — ng .
Отрицательное значение uegew указывает на недостаточный вес. Оба выражения можно объединить:
COMPUTE uegew = gew — (gr — 100) .
Это можно также записать в виде
COMPUTE uegew = gew — gr + 100 .
Формула для определения избыточного веса в процентах к нормальному:
COMPUTE puegew = (gew — ng) / ng * 100 .
Без использования вспомогательной переменной ng эта формула имеет вид
COMPUTE puegew = (gew - (gr - 100)) / (gr - 100) * 100 .
Эта запись выглядит уже довольно сложной и имеет тот недостаток, что выражение gr — 100 должно быть вычислено дважды. Разумеется, при высокой производительности компьютера это не так важно.
Мы уже видели, что в арифметических выражениях могут участвовать переменные и константы. Сейчас мы рассмотрим применение и них функций, которые встроены в SPSS. Если нас интересует не само изменение кровяного давления, а только его абсолютная ветчина, в этом случае можно применить функцию ABS:
COMPUTE rrsd = ABS(rrsl - rrs0)
Чтобы вычислить десятичный логарифм переменной х, применяется функция LG10:
COMPUTE у = LG10(x)
Мы также можем вычислить гипотенузу по теореме Пифагора, использовав функцию SQRT для извлечения квадратного корня и оператор возведения в степень:
COMPUTE с = SQRTfa ** 2 + b ** 2) .
Аргументы функций сами могут быть арифметическими выражениями: Если вы не хо-:ите работать с командами синтаксиса SPSS, можно, как показано в начале главы, применить диалоговое окно Compute Variable. В этом случае в редакторе условий достаточно вместо
COMPUTE rrsd = rrs1 - rrs0 .
ввести просто
rrsd = rrsl - rrs0 для достижения той же цели — вычисления изменения кровяного давления rrsd.