d9e5a92d

Примеры отбора данных



7.1.7 Примеры отбора данных

Здесь мы представим некоторые примеры отбора данных. Рассмотрим следующие условия:

1. Требуется отобрать только респондентов-мужчин. В редакторе условий вводится следующая строка:

sex = 2

Эту строку можно набрать непосредственно или перенести с помощью кнопки с треугольником и кнопок клавиатуры.

2. Требуется отобрать только респондентов-женщин, которые голосовали за ХДС/ХСС. В редакторе условий вводится следующая строка:

sex = 1 & partei = 1

ИЛИ

sex = 1 AND partei = 1

Обратите внимание на значение переменной фильтра в наблюдении 22 (fragebnr = 0-007). Здесь это системное пропущенное значение. В этом случае SPSS не может сделать никакого вывода об истинности, так как переменная partei имеет значение О = нет данных или данные не введены. Поэтому условие sex =1 & partei = 1 в наблюдении 22 нельзя проверить на истинность. Оно может быть как истинным, так и ложным. Для такого неопределенного случая SPSS присваивает переменной filter_$ системное пропущенное значение.

Следовательно, таблицу истинности можно дополнить случаем отсутствующих значений:

Конъюнкция

Логическое выражение

Результат

true AND true

true

true AND false

false

false AND true

false

false AND false

false



true AND missing

missing

false AND missing

false

missing AND missing

missing

Дизъюнкция

Логическое выражение

Результат

true OR true

true

true OR false

true

false OR true

true

false OR false

false

true OR missing

true

false OR missing

missing

missing OR missing

missing

Отрицание:

Логическое выражение

Результат

true

false

false

true

missing

missing

Если результат логического выражения равен missing (отсутствует), то данный случай, как и при результате false, не учитывается при дальнейшей обработке.

3. Требуется отобрать только респондентов, имеющих возраст от 40 до 60 лет включительно.

alter >= 40 & alter <= 60

ИЛИ

alter >= 40 AND alter <= 60

Более изящным будет применение здесь функции

RANGE: RANGE (alter, 40, 60).

4. Требуется отобрать только респондентов-женщин, которые старше 60 лет. sex =1 & alter > 60 ИЛИ sex =1 AND alter > 60.

5. Требуется отобрать только респондентов-мужчин, возраст которых не превышает 25 лет и которые голосовали за СДПГ. При формулировке условия не старше 25 лет применяется оператор NOT:

sex = 2 S partei = 3 & ~ alter > 25

ИЛИ

sex = 2 S partei = 3 S NOT alter > 25.

Оператор NOT обязательно должен стоять в начале логического выражения. Выражение & alter ~> 25 не допускается в SPSS. В этом случае вы получите сообщение об ошибке с подсказкой, где должен находиться оператор NOT.

6. Требуется отобрать респондентов, которые голосовали за ХДС, СДП или республиканцев.

partei = 1 | partei = 2 | partei = 6

ИЛИ

partei = 1 OR partei = 2 OR partei = 6.

Здесь более изящным будет применение функции ANY:

ANY (partei, 1, 2, 6).

7. Отберем респондентов, которые опрашивались в Западной Германии:

fragebnr >= "W-"

Здесь более изящным будет применение функции SUBSTR:

SUBSTR (fragebnr,1,1) = "W"

ИЛИ

SUBSTR (fragebnr,1,2) = "W-"

Можно также применить функцию RANGE:

RANGE (fragebnr, W-001, W-999)

ИЛИ

RANGE (fragebnr, "W-001", "W-999").

8. Отберем респондентов, которые опрашивались в Восточной Германии: fragebnr >= "0-" & fragebnr < "W-"

Достаточно также просто ввести

fragebnr < "W-"

И в этом случае изящнее будет вариант с SUBSTRING:

SUBSTR(fragebnr,1,1) = "О"

или

SUBSTR(fragebnr,1,2) = "0-"

Можно также применить функцию RANGE:

RANGE (fragebnr, "O-001", "0-999")

Удобно использовать оператор NOT:

~ fragebnr >= "W"

Далее мы рассмотрим применение функций UPCASE и LOWER. При этом будем исходить из следующей ситуации.: При вводе номеров анкет иногда по ошибке вме-^то прописного "W" для Западной Германии было закодировано строчное "w". Эти наблюдения не будут отобраны по условию SUBSTR(fragebnr, 1,1) = "W". В таком ^лучае может помочь функция UPCASE или LOWER:

SUBSTR (UPCASE (fragebnr,1,1) = "W".

Рассмотренная конструкция называется вложенной функцией. Вложенные функции вычисляются в направлении изнутри наружу. Функция UPCASE преобразует содержимое переменной fragebnr в прописные буквы. Преобразованное содержимое затем передается в функцию SUBSTR. Эта функция выделяет из строки первую букву. Полученная буква сравнивается с буквой W. Если они совпадают, данное наблюдение выбирается, то есть переменная фильтра filter_S приобретает значение 1. Если применяется функция LOWER, строка в редакторе условий будет выглядеть так:

SUBSTR (LOWER (fragebnr, 1,1) = "w".

Функция LOWER преобразует содержимое переменной fragebnr в строчные буквы. Преобразованное содержимое передается в функцию SUBSTR. Эта функция выделяет из строки первую букву. Полученная буква сравнивается с буквой w. Если они совпадают, данное наблюдение отбирается.






Содержание раздела