調查資料整理與檢誤—邏輯檢誤



黃瓊瑤
[原文刊載於SRDA學術調查研究資料庫通訊第23期,2007.12]

受訪者在整份問卷中回答的答案是否前後一致、合理,訪員訪問時有無填寫錯誤,過錄或輸入資料時是否正確等,有些錯誤不容易在不合理值檢查時被檢出,這時便可藉由邏輯檢誤,再度提高資料的正確性。

邏輯檢誤的內容,大致可分成跳、續答邏輯、複選題邏輯、偏好次序題邏輯、開放題邏輯,以及問卷題目中具有前後相關(未設跳題者)的邏輯檢核等幾種類型。執行邏輯檢誤前,檢誤者須先檢視整份問卷的設計與內容,了解之後再開始著手進行檢誤工作。邏輯檢誤是一項非常繁瑣工作,檢誤期間檢誤者需要經常與問卷設計者互動,確認檢誤者設定的邏輯條件是否過於寬鬆或嚴苛,以增進作業效率。
「學術調查研究資料庫」目前利用SPSS統計軟體來進行邏輯檢誤,以下則針對本資料庫常進行的邏輯檢誤內容進行說明。
一、   跳/續答邏輯
當問卷題目出現跳、續答設計,表示問卷某些題目只需部份符合條件的受訪者回答,透過跳、續答的設計來篩選受訪者。所以跳、續答的邏輯檢誤,最主要是檢查該跳答的是否跳答,該繼續回答的是否回答。一般問卷中只會單向提示須跳答或續答,但在檢誤時則需將與提示相對應的邏輯也一並列入檢查。
範例1
題目:1、請問您是民國那一年出生的?___年〈民國前請鍵入96,若回答「97不知道、98拒答」者,請續問1_1題〉<<<單向提示
      _1、您今年大概幾歲?
      (1) 18—19 (2) 20—29 (3) 30—39 (4) 40—49 (5) 50—59 (6) 60以上 (8)拒答  (9)遺漏值或跳答
檢誤程式(SPSS)
temp.
select if any(v1,97,98) & v1_1=9. <<<問卷提示邏輯
list id v1 v1_1.  (找出v1等於9798,但v1_1卻為遺漏值或跳答,即該答而未答)

temp.
select if range(v1,1,96) & v1_1~=9.  <<<與提示相對應的邏輯
list id v1 v1_1.  (找出v1等於1~96,但v1_1卻不為遺漏值或跳答,即不該答而答)
 
 
註:”&” 可用 ”and” 代替;”any” ”range” 均為函數語法
範例2
題目:2、到目前為止,您家裡需不需要償還借款或貸款?(1)不需要【跳答第3題】(2)需要 (7)不知道【跳答第3題】(8)拒答【跳答第3題】
2a、到目前為止,您家裡還需要償還多少借款或貸款? (01)1萬元及1萬元以下 (02)1萬元以上~10萬元 (03)10萬元以上~25萬元 (04)25萬元以上~50萬元 (05)50萬元以上~100萬元 (06)100萬元以上~300萬元(07)300萬元以上~500萬元 (08)500萬元以上~1000萬元 (09)1000萬元以上 (97)不知道 (98)拒答 (99)遺漏值或跳答
2b、這些是最近3年內還是更早以前的借貸?(1)最近3 (2)更早以前就有,最近3年也有 (3)都不是近3 (7)不知道 (8)拒答 (9)遺漏值或跳答
c、整體來說,這些借貸還款的情形如何?(1)按期還款 (2)有些落後  (3)嚴重的落後 (7)不知道 (8)拒答 (9)遺漏值或跳答
檢誤程式(SPSS)
temp.
select if (v2=2) & (v2a=99 | v2b=9 | v2c=9).
list id v2 to v2c. (找出v2勾選2,但v2a v2b v2c卻未勾選,即該答而未答)

temp.
select if (v2~=2) & (v2a~=99 | v2b~=9 | v2c~=9).
list id v2 to v2c.  (找出v2不是勾選2,但v2a v2b v2c卻有勾選,即不該答而答)
 

註:”|” 可用 ”or” 代替
二、   複選題邏輯
通常施測者願意接受受訪者於一個題目中回答一個以上的答案時,問卷中便會出現複選題設計。但有時題目中複選選項太多,設計問卷時也會限制受訪者最多可勾選幾項。而複選題的邏輯檢誤,最主要是檢查:
1.選項中若有互斥選項則不可重複勾選
2.至少應勾選一個選項
3.當有選項個數限制時,選擇的項數總合不可以超過限制。


範例1
問卷題目:1在運動或體能活動之外,您常玩什麼遊戲?(可複選,最多3) (1) 圍棋 (2) 紙牌遊戲 (3) 麻將 (4) 拼圖 (5) 電動遊戲、電腦遊戲、PS電視遊樂器、彈鋼珠遊戲 (6) 不玩任何遊戲 (7)不知道 (8)拒答
過錄方式:採各選項受訪者「有」或「無」選擇方式過錄,以選項(1)圍棋為例:
        1_1在運動或體能活動之外,您常玩什麼遊戲?圍棋
        (1) (0) (9) 遺漏值
檢誤程式(SPSS)





三、   偏好次序題邏輯
偏好次序題乃指研究者提供多個選項,要求受訪者按照程度排列,在一般問卷中是比較少見的設計。在邏輯檢誤時,主要是檢查:
1.           各次序題不可勾選相同選項。
2.           若題中提供互斥選項且受訪者有勾選時,所有次序題目應選擇相同的互斥選項。
3.           若題中提供互斥選項且受訪者有勾選時,互斥選項不可與其他選項同時出現。
範例1
問卷題目:3a您最常玩什麼遊戲? (1) 圍棋 (2) 紙牌遊戲 (3) 麻將 (4) 拼圖 (5) 電動遊戲、電腦遊戲、PS電視遊樂器、彈鋼珠遊戲 (6) 不玩任何遊戲(7)不知道 (8)拒答
          b您第二常玩什麼遊戲? (1) 圍棋 (2) 紙牌遊戲 (3) 麻將 (4) 拼圖 (5) 電動遊戲、電腦遊戲、PS電視遊樂器、彈鋼珠遊戲 (6) 不玩任何遊戲 (7)不知道 (8)拒答
          c您第三常玩什麼遊戲? (1) 圍棋 (2) 紙牌遊戲 (3) 麻將 (4) 拼圖 (5) 電動遊戲、電腦遊戲、PS電視遊樂器、彈鋼珠遊戲 (6) 不玩任何遊戲 (7)不知道 (8)拒答
檢誤程式(SPSS)
四、   開放題邏輯
設計問卷時,為了避免受訪者的回答沒有適合選項可以勾選,通常會在選項最後增加一個其他的選項與空白格,供記錄受訪者的答案。當在鍵入資料時,空白格的說明會另成一文字變項,所以檢誤開放題時,須檢查:
1.       有勾選選項其他者,卻沒有文字說明
2.       沒有勾選選項其他者,卻有文字說明。
範例1
題目:4.請問您父親是哪裡人? (1)台灣閩南人 (2)台灣客家人      (3)大陸各省市         (4)台灣原住民 (5)東南亞 (6)其他<請說明>__________
檢誤程式(SPSS)


五、   問卷題目中具有前後相關的題目(未設跳題者)的邏輯
邏輯檢誤中較具難度的就是問卷題目中具有前後相關題目的檢查。何謂問卷題目中具有前後相關題目?這通常視檢誤者的經驗及對問卷的了解程度來認定,常見有前後相關的題目包括訪問開始與結束時間、工作狀態、婚姻狀況、教育程度等等。
然而,這樣檢誤方式存在著誤判的風險,有些我們主觀認為是不應發生的狀況,現實社會中卻是存在的。以範例3為例,未婚但與未婚兒子(非婚生子女)同住是有可能的,只是機率很低,我們檢誤時還是會挑出來再做確認。整體來說,若找出越多的前後相關題目邏輯來檢查,越可以確保整份問卷的回答是一致的,更加能保證資料的品質。
範例1
題目:訪問開始時間__________
      訪問結束時間__________
過錄方式:Stime (訪問開始時間) è 9609122027
          Etime (訪問結束時間) è 9609141033
檢誤程式(SPSS)
temp.
select if Etime <= Stime.
list id Stime Etime. (找出訪問開始時間晚於訪問結束時間)
 


範例2
題目:5、以您目前的工作狀況來看,請問您擔不擔心您會失業?(01)很擔心(02)有些擔心 (03)不太擔心 (04)很不擔心 (05)沒有意見 (06)沒有在工作(07)學生/家庭主婦/退休 (97)不知道 (98)拒答
      20、請問您目前的職業是什麼?【請詳細詢問行業、職位,並記錄在開放記錄表中】(01)公職 (02) (03) (04) (05) (06)學生 (07)家庭主婦 (08)退休 (09)失業/沒有工作 (10)其他 (98)拒答
檢誤程式(SPSS)
temp.
select if range(v5,1,5) & range(v20,6,9).
list id v5 v20. (找出v5勾選(1)~(5),但v20卻是勾選(6)~(9))

temp.
select if range(v5,6,7) & range(v20,1,5).
list id v5 v20. (找出v5勾選(6)(7),但v20卻是勾選(1)~(5))

temp.
select if v5=6 & v20~=9.
list id v5 v20. (找出v5勾選(6),但v20卻不是勾選(9))

temp.
select if v5=7 & (v20~=6 | v20~=7 | v20~=8).
list id v5 v20. (找出v5勾選(7),但v20卻不是勾選(6)~(8))
 

範例3
題目:25、請問您是未婚、已婚、離婚、分居、喪偶,還是同居?
(01)未婚(尚未結婚)         (02)已婚                (03)離婚                (04)分居
(05)喪偶(寡居)                       (06)其他                (07)同居                (98)拒答
      30、請問您現在跟哪些人同住?
(01)祖父母         (02)外祖父母                  (03)父母                (04)配偶父母
(05)配偶      (06)已婚兄弟/配偶      (07)未婚兄弟       (08)已婚姊妹/配偶
(09)未婚姊妹     (10)已婚兒子/配偶      (11)未婚兒子       (12)已婚女兒/配偶
(13)未婚女兒     (14)已婚孫子女/配偶    (15)未婚孫子女   (16)已婚外孫子女/配偶
(17)未婚外孫子女        (18)其他已婚親戚/配偶            (19)其他未婚親戚
(20)自己住       (21)非親屬                     (97)不知道            (98)拒答
檢誤程式(SPSS)




範例4
題目:27、請問您個人平均一個月所有的收入加起來大概有多少?
(01)沒有收入                  (02)不到1萬元    (03)1萬元以上,不到3萬元
(04)3萬元以上,不到5萬元          (05)5萬元以上,不到7萬元
(06)7萬元以上,不到9萬元          (07)9萬元以上,不到12萬元
(08)2萬元以上,不到15萬元   (09)15萬元以上,不到20萬元
(10)20萬元以上          (97)不知道        (98)拒答
      28、請問您【全家】一個月所有的收入加起來大概有多少?
(01)沒有收入                  (02)不到1萬元    (03)1萬元以上,不到3萬元
(04)3萬元以上,不到5萬元              (05)5萬元以上,不到7萬元
(06)7萬元以上,不到9萬元                 (07)9萬元以上,不到12萬元
(08)12萬元以上,不到15萬元      (09)15萬元以上,不到20萬元
(10)20萬元以上,不到25萬元      (11)25萬元以上,不到30萬元
(12)30萬元以上,不到35萬元      (13)35萬元以上,不到40萬元
(14)40萬元以上         (97)不知道       (98)拒答
檢誤程式(SPSS)
temp.
select if (v28=1 & range(v27,2,10)) | (v28=2 & range(v27,3,10)) |
       (v28=3 & range(v27,4,10)) | (v28=4 & range(v27,5,10)) |
       (v28=5 & range(v27,6,10)) | (v28=6 & range(v27,7,10)) |
       (v28=7 & range(v27,8,10)) | (v28=8 & range(v27,9,10)) |
       (v28=9 & v27=10).
list id v27 v28. (找出v27勾選的金額選項大於v28)
 
 


以上範例及SPSS程式語法供讀者參考,期望透過這樣的介紹與經驗分享,能對有邏輯檢誤需求者有所幫助,也能讓讀者更清楚瞭解邏輯檢誤需要考慮的面向與實際操作方式。

留言

這個網誌中的熱門文章

使用Python進行資料整理 – 初探Pandas

SAS、SPSS、STATA 統計軟體檔案格式轉換介紹

資料整理與檢誤經驗談—以SPSS程式進行邏輯檢查