가짜 문항은 실제 연구 내용과 관계 없지만 특정 응답을 하도록 정답이 정해져 있는 문항들을 설문의 사이사이에 배치하여 정답을 맞추지 못한 경우 불성실한 응답으로 간주하는 기법이다. 그 예시는 다음과 같다. “나는 한번도 컴퓨터를 사용해보지 않았다”라는 이지선다 문항에 “예” 라고 답하거나, “나는 하루에 잠을 한 시간도 자지 않는다”라는 7점 척도 문항에 1점(매우 아니다) 또는 2점(아니다)이 아닌 다른 응답을 한 경우 불성실한 응답으로 볼 수 있다.

Meade&Craig(2018) 나는 전 세계 모든 나라를 방문해보았다
나는 하루에 잠을 1시간도 자지 않는다
나는 한국어를 한 마디도 알아듣지 못한다

리커트 척도를 이용하여 가짜 문항을 설계한 경우 몇 점의 응답까지 정답으로 간주할 것인지에 대해서는 연구자의 판단이 필요하다. 가짜 문항은 극단적인 경우에 가장 효과적이지만 가짜 문항의 내용은 설문의 신뢰도를 낮출 뿐더러 응답자들로 하여금 자신의 응답이 의심받는다는 인식을 줄 수 있다. 따라서 연구 지시문에 데이터의 질을 높이기 위해 가짜 문항이 포함되어 있음을 미리 밝힐 것을 권장한다. 또한 설문의 길이에 따라 가짜 문항의 개수를 조절하여 사용할 것이 권장되며 Meade & Craig(2012)¹는 50~100문항에 하나정도로 최대 3문항을 포함할 것을 제안했다. 여러 개의 가짜 문항을 사용할 경우 문항의 개수에 따라 불성실한 응답으로 간주할 오답 수의 기준을 정할 것이 권장되며 Curran(2016)²은 전체 가짜 문항 중 절반 이상 틀린 경우 불성실 응답으로 간주할 것을 제안했다.

R manual

위에서 언급한 예시처럼 “나는 하루에 잠을 한 시간도 자지 않는다” 라는 문항에 1점 또는 2점을 고른 응답자를 확인하는 코드는 subset 함수를 이용하여 작성할 수 있다. subset함수는 함수의 대상이 되는 벡터나 행렬, 데이터 매트릭스를 지정하는 x, 특정 조건에 맞는 행을 추출하는 subset, 데이터프레임에서 특정 열을 결과로 반환하는 select 세 가지를 매개변수로 가지며 subset(x, subset, select) 의 형태를 가진다. 예를 들어 “나는 하루에 잠을 한 시간도 자지 않는다”라는 문항이 ‘sample’이라는 데이터에 저장될 때에 ‘bogus’라고 코딩되었다면 1점이나 2점을 고른 응답자는 아래 코드와 같이 추출될 수 있다.

Careless bogus <- subset(sample, bogus==1 | bogus==2)

==연산자는 같다는 것을 나타내고 |연산자는 ‘또는’을 의미한다. 이때 주의할 점은 항목의 이름을 정확히 적어주는 것이 중요하다. 위의 코드처럼 입력할 경우 모든 열의 결과를 보여주게 되는데 만약 ‘bogus’ 행만 확인하고 싶다면 select = bogus를 추가해주면 된다.