Иллюстрированный самоучитель по SPSS
7.1.6 Ввод условного выражения
Теперь попробуем снова выполнить отбор, но в этот раз будем выбирать только респондентов-женщин. Выполните следующие действия:
-
Перенесите переменную sex в редактор условий, дважды щелкнув на ней или выделив ее и щелкнув на кнопке с треугольником.
-
Щелкните на кнопке со знаком равенства на клавиатуре. Этот знак будет скопирован в редактор условий.
-
Щелкните на кнопке 1 на клавиатуре. Знак будет скопирован в редактор условий. Вид диалогового окна показан на рис. 7.3.
Условие имеет вид sex = 1, то есть будут выбраны все наблюдения, для которых переменная sex имеет значение 1 (женский).
Рис. 7.3: Условие в редакторе условий
-
Подтвердите выбор кнопкой Continue (Продолжить). Вы вернетесь в диалог Select Cases. Однако теперь в диалоговом окне появилось условие sex = 1.
-
Щелкните на кнопке ОК. Вы снова окажетесь в редакторе данных.
Примечание: Выбранные опции соответствуют следующему командному синтаксису:
SELECT IF sex = 1.
EXECUTE .
Теперь фильтрация наблюдений включена. О том, что отбор, заданный с помощью диалоговых окон осуществлен свидетельствует сообщение Filter on (Фильтр включен), которое появляется в строке состояния в нижней части окна SPSS. Система создает переменную filter_S. Это численная переменная с длиной один байт. Она имеет следующие метки значений: 0 = Not Selected (Не выбрано), 1 = Selected (Выбрано), так как нуль обозначает ложь (false), а единица — истину (true). При всех последующих операциях будут учитываться только наблюдения, для которых значение этой переменной равно 1, то есть те, для которых выполняется условие sex = 1. Номера неотобранных наблюдений отображаются зачеркиванием в левом крае редактора данных. Теперь проведем частотный анализ переменной partei. Мы получим следующий результат:
Партия
|
|
Frequency
|
Percent
|
Valid Percent
|
Cumulative Percent
|
Valid
|
ХДС/ХСС
|
5
|
33,3
|
35,7
|
35,7
|
|
СДП
|
1
|
6,7
|
7,1
|
42,9
|
|
сдпг
|
4
|
26,7
|
28,6
|
71,4
|
|
Зеленые/Союз 90
|
2
|
13,3
|
14,3
|
85,7
|
|
пдс
|
1
|
6,7
|
7,1
|
92,9
|
|
Прочие
|
1
|
6,7
|
7,1
|
100,0
|
|
Всего
|
14
|
93,3
|
100,0
|
|
Missing Total
|
нет данных
|
1 15
|
6,7 100,0
|
|
|
Из 30 наблюдений файла wahl.sav условие отбора выполняется в 15 наблюдениях; для них sex = 1. Эти 15 наблюдений и учитываются при частотном анализе переменной partei. Для одного из отобранных наблюдений данных о партии нет.
Обратите внимание, что фильтр действует и при остальных статистических процедурах. Команда SPSS SELECT IF или соответствующие настройки в диалоговых окнах фильтруют наблюдения постоянно, то есть до тех пор, пока фильтр не будет удален или деактивирован. Чтобы удалить фильтр, поступите следующим образом:
Если требуется не удалять фильтр, а лишь временно деактивизировать его, выполните следующие действия:
-
Выберите в меню команды Data (Данные)
elect Cases... (Выбрать наблюдения)
-
В диалоговом окне Select Cases щелкните на кнопке All cases (Все наблюдения). Условие фильтра будет деактивировано, однако переменная filter_S сохранится. В любой момент ее можно будет активизировать снова.
На уровне синтаксических команд отбор можно выполнить при помощи единственной процедуры, которая показана ниже. Для этого применяется команда TEMPORARY:
TEMPORARY.
SELECT IF sex = 1.
FREQUENCIES
VARIABLES = partei.
Временный фильтр можно ввести только вручную в редакторе синтаксиса SPSS; через диалоговые окна этого сделать невозможно. Этот пример показывает, что непосредственный ввод команд в редакторе синтаксиса имеет некоторые преимущества. Об этом мы еще расскажем в главе 26 (Программирование).
При вводе команд в редакторе синтаксиса следует обращать внимание на различие между численными и строковыми переменными.
Численная переменная:
SELECT IF sex = 1.
Строковая переменная:
SELECT IF fragebnr = "W-001".
Для строковых переменных (как fragebnr (код анкеты) в этом примере) следует применять простые или двойные кавычки. Слова SELECT IF необходимы только при непосредственном вводе команды в редакторе синтаксиса; та же самая строка в редакторе условий диалога Select Cases: If будет более компактной:
sex = 1 ИЛИ
fragebnr = "W-001"
Здесь также следует учитывать различие между численными и строковыми переменными.