Co to jest pytanie filtrujące?
Pytanie filtrujące (ang. filter question) ustala, czy kolejne pytania dotyczą danej osoby, np. „Czy obecnie pracujesz zarobkowo?”. Logika przejść (skip logic, branching) to reguła, która na podstawie odpowiedzi kieruje respondenta dalej: pracujący dostają pytania o pracę, pozostali je pomijają. W papierowym kwestionariuszu służy do tego instrukcja „Jeśli nie, przejdź do części C”, a w formularzach online sekcje lub warunki wyświetlania pytań.
Jak to zrobić dobrze
- Formułuj filtr neutralnie i z jasnym okresem, np. „w ostatnim roku”.
- Przed rozesłaniem ankiety przejdź wszystkie ścieżki, odpowiadając jak osoby z różnych grup.
- Uważaj na serię filtrów. Gdy pytania dalsze padają od razu po każdym filtrze, część osób uczy się, że „nie” skraca ankietę, i zaniża odpowiedzi (Eckman i in., 2014). Zadanie najpierw wszystkich filtrów, a potem pytań dalszych dawało trafniejsze odpowiedzi, choć Kreuter i in. (2011) odnotowali w tym formacie więcej braków w pytaniach dalszych.
Braki zaplanowane a zwykłe braki
Pusta komórka u osoby niepracującej to brak zaplanowany (strukturalny): pytanie jej nie dotyczyło. Nie podlega podziałowi na MCAR, MAR i MNAR (mechanizmy braków danych), bo prawdziwej wartości po prostu nie ma, więc się go nie imputuje. Nadaj mu osobny kod, np. −1 („nie dotyczy”), inny niż dla pominięcia pytania przez osobę uprawnioną, np. −9, i opisz oba w książce kodowej. Eksport z formularzy zwykle zostawia oba rodzaje jako puste pola, więc kody trzeba odtworzyć z odpowiedzi na filtr (zob. dane z Google Forms i LimeSurvey).
Przykład
Spośród 250 osób 109 pracowało (dane symulowane). Pytanie o liczbę godzin pracy nie dotyczyło 141 osób, a 6 pracujących je pominęło. Braki stanowią 58.8% całej kolumny, ale wśród osób uprawnionych tylko 5.5%. Pracujący deklarowali przeciętnie M = 21.7 godziny tygodniowo (SD = 9.2). Gdyby „nie dotyczy” zakodować jako 0 godzin, średnia spadłaby do 9.2 i opisywałaby inną populację niż pracujący.
Jak opisać w pracy
Na co uważać
- Odsetek braków podawaj wśród osób, których pytanie dotyczyło, a nie dla całej próby.
- Imputacja dotyczy tylko zwykłych braków u osób uprawnionych (zob. braki danych i imputacja wielokrotna w R).
- Błędu w logice przejść, np. pominięcia grupy, której pytanie dotyczyło, nie da się naprawić po zebraniu danych.
Kody „nie dotyczy” i „brak odpowiedzi” w R
Kod tworzy pytanie filtrujące i pytanie dalsze, nadaje osobne kody brakom zaplanowanym (−1) i zwykłym brakom (−9), a potem pokazuje, jak błędne kodowanie „nie dotyczy” jako zera zaniża średnią.
Pytanie filtrujące i pytanie dalsze
R
set.seed(105)
n <- 250
pracuje <- rbinom(n, 1, 0.42) # pytanie filtrujące: 1 = tak
godziny <- ifelse(pracuje == 1, round(pmin(pmax(rnorm(n, 22, 9), 4), 45)), -1) # −1 = nie dotyczy (przejście)
godziny[pracuje == 1][sample(sum(pracuje), 6)] <- -9 # −9 = pominięte przez osobę, która powinna odpowiedzieć
table(status = ifelse(godziny == -1, "nie dotyczy", ifelse(godziny == -9, "brak odpowiedzi", "odpowiedź")))
h <- ifelse(godziny < 0, NA, godziny) # do analizy oba kody zamieniamy na NA
round(c(M = mean(h, na.rm = TRUE), SD = sd(h, na.rm = TRUE)), 1)
round(mean(ifelse(godziny == -1, 0, h), na.rm = TRUE), 1) # błąd: „nie dotyczy” zakodowane jako 0 godzinWynik w R
status
brak odpowiedzi nie dotyczy odpowiedź
6 141 103
M SD
21.7 9.2
[1] 9.2Bibliografia oprogramowania
Wyniki pochodzą z uruchomienia pokazanego kodu w R 4.5.3 (funkcje pakietów base i stats). W pracy podaj wersję R, której faktycznie użyto (sessionInfo()).
- R: R Core Team. (2026). R: A language and environment for statistical computing (Version 4.5.3) [Computer software]. R Foundation for Statistical Computing. https://www.R-project.org/
Najczęstsze pytania
Czy puste odpowiedzi po pytaniu filtrującym to braki danych?
Nie w zwykłym sensie. To braki zaplanowane: pytanie tej osoby nie dotyczyło. Koduj je osobno jako „nie dotyczy”, nie imputuj ich i nie wliczaj do odsetka braków.
Jak zrobić logikę przejść w Google Forms?
Podziel formularz na sekcje i przy pytaniu filtrującym ustaw przejście do sekcji zależnie od odpowiedzi. Przed rozesłaniem przejdź każdą ścieżkę, odpowiadając jak osoby z różnych grup.
Dlaczego respondenci odpowiadają „nie” na pytania filtrujące?
Część osób szybko uczy się, że odpowiedź „nie” skraca ankietę. Ryzyko rośnie przy serii filtrów, po których od razu padają pytania dalsze.
Powiązane hasła
Poradniki, w których użyjesz tego pojęcia
Dane z Google Forms i LimeSurvey: kodowanie do SPSS i R
Eksport, nazwy zmiennych, rekodowanie Likerta, pozycje odwrócone, wielokrotny wybór i braki – krok po kroku, z kodem R i wzorem książki kodowej.
Czytaj →PoradnikBraki danych i imputacja wielokrotna w R
MCAR, MAR i MNAR, test Little’a, symulacja metod i imputacja wielokrotna w R krok po kroku – z kodem, regułami Rubina i gotowym opisem APA.
Czytaj →Potrzebujesz wsparcia w analizie danych?
Wybierz ofertę dopasowaną do pracy dyplomowej albo profesjonalnego projektu naukowego.
Wyceń analizęOferta dla studentówBibliografia i dalsza literatura naukowa (APA 7)
- Eckman, S., Kreuter, F., Kirchner, A., Jäckle, A., Tourangeau, R., & Presser, S. (2014). Assessing the mechanisms of misreporting to filter questions in surveys. Public Opinion Quarterly, 78(3), 721–733. https://doi.org/10.1093/poq/nfu030
- Kreuter, F., McCulloch, S., Presser, S., & Tourangeau, R. (2011). The effects of asking filter questions in interleafed versus grouped format. Sociological Methods & Research, 40(1), 88–104. https://doi.org/10.1177/0049124110392342
Cytowania BibTeX
@article{eckman2014assessing, author={Eckman, Stephanie and Kreuter, Frauke and Kirchner, Antje and Jäckle, Annette and Tourangeau, Roger and Presser, Stanley}, title={{Assessing the mechanisms of misreporting to filter questions in surveys}}, journal={Public Opinion Quarterly}, year={2014}, volume={78}, number={3}, pages={721--733}, doi={10.1093/poq/nfu030}}@article{kreuter2011effects, author={Kreuter, Frauke and McCulloch, Susan and Presser, Stanley and Tourangeau, Roger}, title={{The effects of asking filter questions in interleafed versus grouped format}}, journal={Sociological Methods \& Research}, year={2011}, volume={40}, number={1}, pages={88--104}, doi={10.1177/0049124110392342}}