การหาคุณสมบัติของข้อคำถาม

อ่านข้อมูลด้วยคำสั่ง read.table แล้วใส่ไฟล์ที่ต้องการอ่านลงไป ในที่นี้คือ emotionalstability.csv

dat <- read.table("emotionalstability.csv", sep = ",", header = TRUE)

ข้อมูลนี้จะเป็นข้อคำถามในมาตรวัดความมั่นคงทางอารมณ์ มีทั้งหมด 10 ข้อ โดยข้อที่ 1-5 เป็นข้อทางบวก และข้อที่ 6-10 เป็นข้อทางลบ อันดับแรกให้สร้างเวคเตอร์ที่มีชื่อของตัวแปรทุกตัว ในที่นี้ตั้งชื่อว่า itemname

itemname <- c("EMO01", "EMO02", "EMO03", "EMO04", "EMO05",
              "EMO06", "EMO07", "EMO08", "EMO09", "EMO10")

ใช้คำสั่ง describe ในแพ๊คเกจ psych เพื่อตรวจสอบค่าสถิติพื้นฐานของตัวแปรแต่ละตัวในข้อมูล ในที่นี้จะได้ค่าเฉลี่ย (ความยากรายข้อ) ของแต่ละตัวแปร

library(psych)
## Warning: package 'psych' was built under R version 4.2.3
describe(dat)
##       vars   n mean   sd median trimmed  mad min max range  skew kurtosis   se
## EMO01    1 200 2.98 1.31      3    2.98 1.48   1   5     4 -0.01    -1.09 0.09
## EMO02    2 200 2.94 1.32      3    2.92 1.48   1   5     4  0.04    -1.26 0.09
## EMO03    3 200 2.90 1.34      3    2.87 1.48   1   5     4 -0.11    -1.15 0.09
## EMO04    4 200 3.00 1.13      3    3.04 1.48   1   5     4 -0.16    -0.92 0.08
## EMO05    5 200 3.04 1.25      3    3.04 1.48   1   5     4  0.10    -1.05 0.09
## EMO06    6 200 3.02 1.16      3    2.98 1.48   1   5     4  0.36    -0.86 0.08
## EMO07    7 200 2.97 1.21      3    2.96 1.48   1   5     4 -0.05    -0.80 0.09
## EMO08    8 200 2.92 1.15      3    2.93 1.48   1   5     4  0.07    -1.03 0.08
## EMO09    9 200 3.05 1.33      3    3.06 1.48   1   5     4 -0.23    -1.26 0.09
## EMO10   10 200 2.94 1.08      3    2.91 1.48   1   5     4  0.19    -1.01 0.08

ใช้คำสั่ง alpha ในแพ๊คเกจ psych เพื่อตรวจสอบค่าอำนาจจำแนกของตัวแปร (เพิ่มเติมจากสัมประสิทธิ์อัลฟ่า)

alpha(dat[,itemname]) 
## Warning in alpha(dat[, itemname]): Some items were negatively correlated with the first principal component and probably 
## should be reversed.  
## To do this, run the function again with the 'check.keys=TRUE' option
## Some items ( EMO06 EMO07 EMO08 EMO09 EMO10 ) were negatively correlated with the first principal component and 
## probably should be reversed.  
## To do this, run the function again with the 'check.keys=TRUE' option
## 
## Reliability analysis   
## Call: alpha(x = dat[, itemname])
## 
##   raw_alpha std.alpha G6(smc) average_r  S/N   ase mean   sd median_r
##       0.48      0.48    0.73     0.084 0.92 0.061    3 0.52    -0.27
## 
##     95% confidence boundaries 
##          lower alpha upper
## Feldt     0.36  0.48  0.58
## Duhachek  0.36  0.48  0.60
## 
##  Reliability if an item is dropped:
##       raw_alpha std.alpha G6(smc) average_r  S/N alpha se var.r med.r
## EMO01      0.44      0.45    0.72     0.084 0.82    0.066  0.21 -0.27
## EMO02      0.44      0.45    0.72     0.083 0.81    0.066  0.22 -0.28
## EMO03      0.42      0.43    0.70     0.078 0.76    0.068  0.21 -0.27
## EMO04      0.41      0.43    0.69     0.077 0.75    0.069  0.20 -0.27
## EMO05      0.43      0.45    0.70     0.082 0.81    0.066  0.20 -0.27
## EMO06      0.47      0.46    0.72     0.087 0.85    0.061  0.21 -0.27
## EMO07      0.50      0.49    0.74     0.097 0.97    0.058  0.22 -0.27
## EMO08      0.45      0.44    0.70     0.079 0.77    0.063  0.22 -0.29
## EMO09      0.48      0.45    0.70     0.085 0.83    0.058  0.20 -0.27
## EMO10      0.47      0.47    0.72     0.088 0.87    0.060  0.21 -0.27
## 
##  Item statistics 
##         n raw.r std.r r.cor r.drop mean  sd
## EMO01 200  0.46  0.42  0.34  0.224  3.0 1.3
## EMO02 200  0.47  0.43  0.34  0.235  2.9 1.3
## EMO03 200  0.51  0.47  0.44  0.282  2.9 1.3
## EMO04 200  0.51  0.48  0.46  0.320  3.0 1.1
## EMO05 200  0.47  0.43  0.41  0.250  3.0 1.2
## EMO06 200  0.35  0.40  0.31  0.138  3.0 1.2
## EMO07 200  0.27  0.31  0.18  0.039  3.0 1.2
## EMO08 200  0.42  0.46  0.40  0.215  2.9 1.2
## EMO09 200  0.38  0.41  0.38  0.130  3.0 1.3
## EMO10 200  0.33  0.38  0.31  0.132  2.9 1.1
## 
## Non missing response frequency for each item
##          1    2    3    4    5 miss
## EMO01 0.17 0.20 0.27 0.21 0.16    0
## EMO02 0.16 0.28 0.16 0.27 0.14    0
## EMO03 0.24 0.10 0.30 0.23 0.12    0
## EMO04 0.10 0.24 0.26 0.32 0.07    0
## EMO05 0.10 0.28 0.25 0.20 0.16    0
## EMO06 0.06 0.33 0.31 0.14 0.16    0
## EMO07 0.15 0.17 0.36 0.20 0.12    0
## EMO08 0.10 0.32 0.22 0.28 0.08    0
## EMO09 0.17 0.20 0.14 0.36 0.12    0
## EMO10 0.06 0.38 0.22 0.28 0.07    0

ผลการวิเคราะห์ขึ้นเตือนว่า ข้อคำถามอาจไม่ได้กลับคะแนน (ซึ่งเป็นความจริง) โดยโปรแกรมแนะนำให้ใส่ check.keys=TRUE ลงใน alpha หากไปใส่ตามโปรแกรมบอก โปรแกรมจะคาดเดาว่าตัวแปรอะไรบ้างที่มีทิศทางลบ แล้วลองกลับทิศข้อคำถามให้ดู แล้วหาค่าสัมประสิทธิ์อัลฟ่าอีกที นักวิเคราะห์พอดูเป็นแนวทางได้

แต่เอาจริง นักวิเคราะห์ย่อมรู้ดีอยู่แล้วว่าข้อใดเป็นข้อทางลบตั้งแต่ต้น นักวิเคราะห์จึงควรกลับคะแนน ก่อนนำมาหาค่าสัมประสิทธิ์อัลฟ่า ดังนั้นจึงกลับคะแนนข้อ 6-10 ที่เป็นข้อทางลบ เนื่องจากคำตอบที่เป็นไปได้ในแต่ละข้อ คือ 1-5 ดังนั้นจึงนำคะแนนไปลบออกจาก 6 เพื่อให้คะแนน 1, 2, 3, 4, 5 กลับด้านเป็น 5, 4, 3, 2, 1

dat[,"EMO06"] <- 6 - dat[,"EMO06"]
dat[,"EMO07"] <- 6 - dat[,"EMO07"]
dat[,"EMO08"] <- 6 - dat[,"EMO08"]
dat[,"EMO09"] <- 6 - dat[,"EMO09"]
dat[,"EMO10"] <- 6 - dat[,"EMO10"]

ลองหาค่าสัมประสิทธิ์อัลฟ่าอีกครั้ง จะพบว่าคำเตือนหายไป และค่าอัลฟ่ากลับมาสูง

alpha(dat[,itemname]) 
## 
## Reliability analysis   
## Call: alpha(x = dat[, itemname])
## 
##   raw_alpha std.alpha G6(smc) average_r S/N   ase mean   sd median_r
##       0.88      0.89     0.9      0.44 7.7 0.012    3 0.86     0.37
## 
##     95% confidence boundaries 
##          lower alpha upper
## Feldt     0.86  0.88  0.91
## Duhachek  0.86  0.88  0.91
## 
##  Reliability if an item is dropped:
##       raw_alpha std.alpha G6(smc) average_r S/N alpha se var.r med.r
## EMO01      0.87      0.88    0.90      0.44 7.0    0.014 0.023  0.38
## EMO02      0.88      0.88    0.90      0.44 7.1    0.013 0.023  0.38
## EMO03      0.87      0.87    0.89      0.43 6.9    0.014 0.020  0.38
## EMO04      0.87      0.87    0.89      0.43 6.7    0.014 0.020  0.38
## EMO05      0.87      0.87    0.89      0.42 6.6    0.014 0.021  0.35
## EMO06      0.88      0.88    0.90      0.44 7.1    0.013 0.023  0.38
## EMO07      0.88      0.88    0.90      0.45 7.3    0.013 0.025  0.37
## EMO08      0.88      0.88    0.89      0.44 7.2    0.013 0.021  0.38
## EMO09      0.87      0.87    0.89      0.43 6.7    0.014 0.022  0.36
## EMO10      0.87      0.87    0.89      0.43 6.9    0.014 0.023  0.38
## 
##  Item statistics 
##         n raw.r std.r r.cor r.drop mean  sd
## EMO01 200  0.70  0.69  0.65   0.61  3.0 1.3
## EMO02 200  0.68  0.67  0.62   0.58  2.9 1.3
## EMO03 200  0.73  0.72  0.70   0.64  2.9 1.3
## EMO04 200  0.76  0.75  0.74   0.69  3.0 1.1
## EMO05 200  0.77  0.76  0.75   0.70  3.0 1.2
## EMO06 200  0.67  0.68  0.63   0.58  3.0 1.2
## EMO07 200  0.64  0.64  0.58   0.54  3.0 1.2
## EMO08 200  0.64  0.66  0.62   0.56  3.1 1.2
## EMO09 200  0.74  0.74  0.72   0.65  3.0 1.3
## EMO10 200  0.69  0.71  0.67   0.62  3.1 1.1
## 
## Non missing response frequency for each item
##          1    2    3    4    5 miss
## EMO01 0.17 0.20 0.27 0.21 0.16    0
## EMO02 0.16 0.28 0.16 0.27 0.14    0
## EMO03 0.24 0.10 0.30 0.23 0.12    0
## EMO04 0.10 0.24 0.26 0.32 0.07    0
## EMO05 0.10 0.28 0.25 0.20 0.16    0
## EMO06 0.16 0.14 0.31 0.33 0.06    0
## EMO07 0.12 0.20 0.36 0.17 0.15    0
## EMO08 0.08 0.28 0.22 0.32 0.10    0
## EMO09 0.12 0.36 0.14 0.20 0.17    0
## EMO10 0.07 0.28 0.22 0.38 0.06    0

ถ้าดูผลลัพธ์ของฟังก์ชั่นนี้ จะพบว่านอกเหนือค่าอัลฟ่าที่อ่านได้จาก raw_alpha แล้ว ยังมีค่าที่น่าสนใจอีกมากมาย

เมื่อตรวจสอบค่า CITC แล้ว จะพบว่าทุกข้อมีค่าสูงกว่า .2 ซึ่งถือว่าทุกข้อในมาตรนี้ ค่อนข้างสอดคล้องไปในทางเดียวกัน ซึ่งสะท้อนให้เห็นในค่าอัลฟ่า ที่มีค่าถึง .88 อย่างไรก็ตาม เพื่อสาธิตการคัดข้อคำถามด้วย CITC จะตัดข้อคำถามในมาตรนี้ออกไป 5 ข้อ ให้เหลือ 5 ข้อ

เมื่อตรวจสอบค่า CITC ของทั้ง 10 ข้อ พบว่าข้อที่ 7 มีค่า CITC ต่ำที่สุด จึงตัดข้อคำถามดังกล่าว วิธีการติดตามการตัดข้อคำถามที่ง่ายที่สุด คือ การตัดข้อผ่านคำสั่ง setdiff โดยนำชื่อข้อคำถามไปใส่เป็น argument ที่ 1 แล้วนำชื่อข้อคำถามที่จะตัดออกไปใส่ใน argument ที่ 2 ผลลัพธ์จะเป็นรายชื่อข้อคำถามที่คัดข้อทิ้งแล้ว กล่าวคือ จะเหลือข้อ 1, 2, 3, 4, 5, 6, 8, 9, 10 นำผลลัพธ์ทั้ง 9 ข้อไปหา CITC อีกรอบหนึ่ง

itemname1 <- setdiff(itemname, "EMO07")
itemname1
## [1] "EMO01" "EMO02" "EMO03" "EMO04" "EMO05" "EMO06" "EMO08" "EMO09" "EMO10"
alpha(dat[,itemname1])
## 
## Reliability analysis   
## Call: alpha(x = dat[, itemname1])
## 
##   raw_alpha std.alpha G6(smc) average_r S/N   ase mean   sd median_r
##       0.88      0.88     0.9      0.45 7.3 0.013    3 0.88     0.37
## 
##     95% confidence boundaries 
##          lower alpha upper
## Feldt     0.85  0.88   0.9
## Duhachek  0.85  0.88   0.9
## 
##  Reliability if an item is dropped:
##       raw_alpha std.alpha G6(smc) average_r S/N alpha se var.r med.r
## EMO01      0.86      0.87    0.89      0.45 6.5    0.015 0.027  0.37
## EMO02      0.87      0.87    0.89      0.45 6.6    0.015 0.027  0.37
## EMO03      0.86      0.86    0.88      0.44 6.4    0.015 0.023  0.37
## EMO04      0.86      0.86    0.88      0.43 6.1    0.016 0.023  0.36
## EMO05      0.86      0.86    0.88      0.43 6.1    0.016 0.024  0.35
## EMO06      0.87      0.87    0.89      0.46 6.7    0.014 0.027  0.38
## EMO08      0.87      0.87    0.89      0.46 6.9    0.014 0.023  0.38
## EMO09      0.86      0.86    0.88      0.44 6.4    0.015 0.026  0.35
## EMO10      0.87      0.87    0.89      0.45 6.5    0.015 0.027  0.38
## 
##  Item statistics 
##         n raw.r std.r r.cor r.drop mean  sd
## EMO01 200  0.72  0.71  0.66   0.62  3.0 1.3
## EMO02 200  0.70  0.69  0.63   0.59  2.9 1.3
## EMO03 200  0.74  0.73  0.71   0.65  2.9 1.3
## EMO04 200  0.77  0.77  0.75   0.71  3.0 1.1
## EMO05 200  0.78  0.77  0.76   0.70  3.0 1.2
## EMO06 200  0.66  0.67  0.62   0.56  3.0 1.2
## EMO08 200  0.63  0.64  0.60   0.53  3.1 1.2
## EMO09 200  0.73  0.73  0.71   0.63  3.0 1.3
## EMO10 200  0.68  0.70  0.66   0.60  3.1 1.1
## 
## Non missing response frequency for each item
##          1    2    3    4    5 miss
## EMO01 0.17 0.20 0.27 0.21 0.16    0
## EMO02 0.16 0.28 0.16 0.27 0.14    0
## EMO03 0.24 0.10 0.30 0.23 0.12    0
## EMO04 0.10 0.24 0.26 0.32 0.07    0
## EMO05 0.10 0.28 0.25 0.20 0.16    0
## EMO06 0.16 0.14 0.31 0.33 0.06    0
## EMO08 0.08 0.28 0.22 0.32 0.10    0
## EMO09 0.12 0.36 0.14 0.20 0.17    0
## EMO10 0.07 0.28 0.22 0.38 0.06    0

ตรวจสอบค่า CITC อีกครั้ง พบว่าข้อที่ 8 ต่ำที่สุด นำข้อดังกล่าวออก แล้วหา CITC ของ 8 ข้อที่เหลือ

itemname2 <- setdiff(itemname1, "EMO08")
alpha(dat[,itemname2])
## 
## Reliability analysis   
## Call: alpha(x = dat[, itemname2])
## 
##   raw_alpha std.alpha G6(smc) average_r S/N   ase mean  sd median_r
##       0.87      0.87    0.89      0.46 6.9 0.014    3 0.9     0.38
## 
##     95% confidence boundaries 
##          lower alpha upper
## Feldt     0.84  0.87   0.9
## Duhachek  0.85  0.87   0.9
## 
##  Reliability if an item is dropped:
##       raw_alpha std.alpha G6(smc) average_r S/N alpha se var.r med.r
## EMO01      0.86      0.86    0.88      0.46 6.0    0.016 0.026  0.37
## EMO02      0.86      0.86    0.88      0.47 6.1    0.016 0.025  0.37
## EMO03      0.85      0.85    0.87      0.45 5.8    0.017 0.021  0.37
## EMO04      0.85      0.85    0.86      0.44 5.6    0.017 0.020  0.37
## EMO05      0.85      0.85    0.86      0.44 5.6    0.017 0.021  0.36
## EMO06      0.87      0.87    0.88      0.49 6.6    0.014 0.023  0.54
## EMO09      0.86      0.86    0.87      0.47 6.3    0.015 0.024  0.54
## EMO10      0.86      0.86    0.87      0.48 6.4    0.015 0.024  0.54
## 
##  Item statistics 
##         n raw.r std.r r.cor r.drop mean  sd
## EMO01 200  0.74  0.74  0.69   0.64  3.0 1.3
## EMO02 200  0.72  0.71  0.65   0.61  2.9 1.3
## EMO03 200  0.78  0.77  0.74   0.69  2.9 1.3
## EMO04 200  0.80  0.80  0.78   0.73  3.0 1.1
## EMO05 200  0.80  0.80  0.78   0.73  3.0 1.2
## EMO06 200  0.63  0.64  0.58   0.52  3.0 1.2
## EMO09 200  0.69  0.69  0.65   0.57  3.0 1.3
## EMO10 200  0.66  0.67  0.62   0.56  3.1 1.1
## 
## Non missing response frequency for each item
##          1    2    3    4    5 miss
## EMO01 0.17 0.20 0.27 0.21 0.16    0
## EMO02 0.16 0.28 0.16 0.27 0.14    0
## EMO03 0.24 0.10 0.30 0.23 0.12    0
## EMO04 0.10 0.24 0.26 0.32 0.07    0
## EMO05 0.10 0.28 0.25 0.20 0.16    0
## EMO06 0.16 0.14 0.31 0.33 0.06    0
## EMO09 0.12 0.36 0.14 0.20 0.17    0
## EMO10 0.07 0.28 0.22 0.38 0.06    0

ตรวจสอบค่า CITC อีกครั้ง พบว่าข้อที่ 6 ต่ำที่สุด นำข้อดังกล่าวออก แล้วหา CITC ของ 7 ข้อที่เหลือ

itemname3 <- setdiff(itemname2, "EMO06")
alpha(dat[,itemname3])
## 
## Reliability analysis   
## Call: alpha(x = dat[, itemname3])
## 
##   raw_alpha std.alpha G6(smc) average_r S/N   ase mean   sd median_r
##       0.87      0.87    0.88      0.49 6.6 0.014    3 0.94     0.54
## 
##     95% confidence boundaries 
##          lower alpha upper
## Feldt     0.84  0.87  0.89
## Duhachek  0.84  0.87  0.90
## 
##  Reliability if an item is dropped:
##       raw_alpha std.alpha G6(smc) average_r S/N alpha se var.r med.r
## EMO01      0.85      0.85    0.86      0.48 5.6    0.017 0.027  0.39
## EMO02      0.85      0.85    0.87      0.49 5.8    0.017 0.027  0.39
## EMO03      0.84      0.84    0.85      0.47 5.3    0.018 0.022  0.39
## EMO04      0.84      0.84    0.85      0.46 5.1    0.018 0.020  0.39
## EMO05      0.83      0.84    0.85      0.46 5.1    0.018 0.021  0.37
## EMO09      0.87      0.87    0.86      0.52 6.5    0.014 0.022  0.55
## EMO10      0.87      0.87    0.86      0.52 6.6    0.015 0.021  0.55
## 
##  Item statistics 
##         n raw.r std.r r.cor r.drop mean  sd
## EMO01 200  0.76  0.76  0.70   0.66  3.0 1.3
## EMO02 200  0.74  0.73  0.67   0.63  2.9 1.3
## EMO03 200  0.81  0.80  0.77   0.71  2.9 1.3
## EMO04 200  0.83  0.83  0.81   0.76  3.0 1.1
## EMO05 200  0.83  0.83  0.81   0.75  3.0 1.2
## EMO09 200  0.65  0.65  0.59   0.50  3.0 1.3
## EMO10 200  0.62  0.64  0.57   0.51  3.1 1.1
## 
## Non missing response frequency for each item
##          1    2    3    4    5 miss
## EMO01 0.17 0.20 0.27 0.21 0.16    0
## EMO02 0.16 0.28 0.16 0.27 0.14    0
## EMO03 0.24 0.10 0.30 0.23 0.12    0
## EMO04 0.10 0.24 0.26 0.32 0.07    0
## EMO05 0.10 0.28 0.25 0.20 0.16    0
## EMO09 0.12 0.36 0.14 0.20 0.17    0
## EMO10 0.07 0.28 0.22 0.38 0.06    0

ตรวจสอบค่า CITC อีกครั้ง พบว่าข้อที่ 9 ต่ำที่สุด นำข้อดังกล่าวออก แล้วหา CITC ของ 6 ข้อที่เหลือ

itemname4 <- setdiff(itemname3, "EMO09")
alpha(dat[,itemname4])
## 
## Reliability analysis   
## Call: alpha(x = dat[, itemname4])
## 
##   raw_alpha std.alpha G6(smc) average_r S/N   ase mean   sd median_r
##       0.87      0.87    0.86      0.52 6.5 0.014    3 0.96     0.55
## 
##     95% confidence boundaries 
##          lower alpha upper
## Feldt     0.84  0.87  0.89
## Duhachek  0.84  0.87  0.90
## 
##  Reliability if an item is dropped:
##       raw_alpha std.alpha G6(smc) average_r S/N alpha se  var.r med.r
## EMO01      0.85      0.84    0.83      0.52 5.4    0.017 0.0280  0.56
## EMO02      0.85      0.85    0.84      0.53 5.5    0.016 0.0289  0.56
## EMO03      0.83      0.83    0.82      0.50 5.0    0.018 0.0212  0.54
## EMO04      0.83      0.82    0.81      0.48 4.7    0.019 0.0193  0.54
## EMO05      0.83      0.83    0.81      0.49 4.7    0.019 0.0206  0.54
## EMO10      0.89      0.89    0.87      0.61 7.9    0.013 0.0055  0.58
## 
##  Item statistics 
##         n raw.r std.r r.cor r.drop mean  sd
## EMO01 200  0.79  0.78  0.72   0.67  3.0 1.3
## EMO02 200  0.77  0.76  0.69   0.65  2.9 1.3
## EMO03 200  0.83  0.82  0.80   0.73  2.9 1.3
## EMO04 200  0.85  0.86  0.84   0.78  3.0 1.1
## EMO05 200  0.85  0.85  0.83   0.77  3.0 1.2
## EMO10 200  0.55  0.58  0.43   0.40  3.1 1.1
## 
## Non missing response frequency for each item
##          1    2    3    4    5 miss
## EMO01 0.17 0.20 0.27 0.21 0.16    0
## EMO02 0.16 0.28 0.16 0.27 0.14    0
## EMO03 0.24 0.10 0.30 0.23 0.12    0
## EMO04 0.10 0.24 0.26 0.32 0.07    0
## EMO05 0.10 0.28 0.25 0.20 0.16    0
## EMO10 0.07 0.28 0.22 0.38 0.06    0

ตรวจสอบค่า CITC อีกครั้ง พบว่าข้อที่ 10 ต่ำที่สุด นำข้อดังกล่าวออก แล้วหา CITC ของ 5 ข้อที่เหลือ

itemname5 <- setdiff(itemname4, "EMO10")
alpha(dat[,itemname5])
## 
## Reliability analysis   
## Call: alpha(x = dat[, itemname5])
## 
##   raw_alpha std.alpha G6(smc) average_r S/N   ase mean  sd median_r
##       0.89      0.89    0.87      0.61 7.9 0.013    3 1.1     0.58
## 
##     95% confidence boundaries 
##          lower alpha upper
## Feldt     0.86  0.89  0.91
## Duhachek  0.86  0.89  0.91
## 
##  Reliability if an item is dropped:
##       raw_alpha std.alpha G6(smc) average_r S/N alpha se  var.r med.r
## EMO01      0.87      0.88    0.85      0.64 7.1    0.015 0.0066  0.64
## EMO02      0.88      0.88    0.85      0.65 7.4    0.014 0.0058  0.67
## EMO03      0.86      0.86    0.83      0.60 6.1    0.017 0.0046  0.58
## EMO04      0.85      0.85    0.82      0.58 5.6    0.018 0.0049  0.56
## EMO05      0.85      0.85    0.82      0.59 5.8    0.017 0.0038  0.57
## 
##  Item statistics 
##         n raw.r std.r r.cor r.drop mean  sd
## EMO01 200  0.80  0.79  0.72   0.67  3.0 1.3
## EMO02 200  0.78  0.78  0.69   0.65  2.9 1.3
## EMO03 200  0.85  0.84  0.80   0.75  2.9 1.3
## EMO04 200  0.87  0.88  0.85   0.79  3.0 1.1
## EMO05 200  0.86  0.86  0.83   0.77  3.0 1.2
## 
## Non missing response frequency for each item
##          1    2    3    4    5 miss
## EMO01 0.17 0.20 0.27 0.21 0.16    0
## EMO02 0.16 0.28 0.16 0.27 0.14    0
## EMO03 0.24 0.10 0.30 0.23 0.12    0
## EMO04 0.10 0.24 0.26 0.32 0.07    0
## EMO05 0.10 0.28 0.25 0.20 0.16    0

การตัดข้อออก 5 ข้อเรียบร้อยแล้ว จะเห็นว่าข้อที่เหลือ จะเป็นข้อทางบวกทั้งหมด ข้อทางลบถูกคัดทิ้งออกทั้งหมด ความจริงเป็นคุณลักษณะที่ไม่พึงประสงค์ เพราะว่าความตรงเชิงเนื้อหา (Content Validity) จะตกลง (แม้ความเที่ยงสูงขึ้น) แต่กรณีนี้ทำเพื่อเป็นการสาธิตให้เห็นกระบวนการคัดข้อคำถามผ่าน CITC เท่านั้น