#— Giới thiệu

Tài liệu dưới này giới thiệu các lệnh cơ bản về Kiểm định Bartlett, Hệ số KMO và Độ tin cậy Cronbach’s alpha. + Data thực hành lấy tại trang website gốc: https://archive.ics.uci.edu/ml/datasets/wiki4he hoặc đã chỉnh sửa các phạm trù của biến chất lượng và upload tại link google driver: https://drive.google.com/drive/folders/17Cd5NFN3SRQ_rHLYDqjt93lxY-W5tQT1?usp=sharing + Chi tiết lý thuyết bài trình bày của Trịnh Thị Hường (TMU) và Nguyễn Thanh Nga (HVNN) tại https://drive.google.com/drive/folders/1b9A4Rv_amDtVGoIczMhJaek0SBnjTtQE?usp=sharing

Nhập số liệu và gọi các gói lệnh. Trong đó, gói psych chứa các hàm để thực hiện các kiểm định ở trên.

setwd("D:/Taphuan_VIASM/Chuoi Seminar/Rcode")

load("wiki4he.RDATA")
require(tidyverse) 
require(psych)

Lọc các biến quan sát (items) thuộc thang đo Likert

Từ data ban đầu wiki4he, chúng ta loại bỏ các biến không quan tâm, sau đó có thể xem thêm cấu trúc dữ iệu và loại bỏ các giá trị rỗng.

d <- wiki4he %>% select(-c(AGE,GENDER,   DOMAIN,   PhD,YEARSEXP, 
                      UNIVERSITY,UOC_POSITION , OTHER_POSITION, OTHERSTATUS,   USERWIKI  ))
head(d)
names(d)
summary(d)
d <- na.omit(d)

Ma trận tương quan và hiệp phương sai

vì các kiểm định trên được xây dựng trên ma trận tương quan và tự tương quan của ma trận biến quan sát, nên có các lệnh sau để quan sát ma trận tương quan và hiệp phương sai, đồng thời, có thể vẽ các ma trận.

ví dụ, chúng ta quan tâm đến các biến quan sát về use (Use behaviour). Chi tiết tên các biến từ website gốc tại https://archive.ics.uci.edu/ml/datasets/wiki4he

raqMatrix <- cor(d %>% select(Use1, Use2, Use3, Use4, Use5 ))
raqMatrix
CovMatric <- cov(d %>% select(Use1, Use2, Use3, Use4, Use5 ))
CovMatric

Vẽ hình minh họa ma trận hiêp

library(corrplot)
corrplot(raqMatrix, method="circle")
corrplot(raqMatrix, method="color")

Lệnh kiểm định Bartlett’s test

cortest.bartlett(d)

Kiểm định KMO

raqMatrix <- cor(d)
KMO(raqMatrix)

Cronback alpha

alpha(d)
alpha(d %>% select(PU1,    PU2,    PU3 ))
alpha(d %>% select(PEU1,  PEU2,  PEU3 ))

Lấy thông tin về Cronback alph và hệ số tương quan biến tổng

Đoạn code sau để lấy ra hệ số Alpha của từng nhân tố và average inter-item correlation tương ứng tương ứng 2 cột đầu tiên trong TABLE 2. Internal reliability, convergent validity, and discriminant validity of the constructs. của bài báo https://asistdl.onlinelibrary.wiley.com/doi/abs/10.1002/asi.23488

fun1 <- function(dauvao, tennhanto)
{
  tempt <- data.frame(value = c(dauvao[[1]]$std.alpha,   dauvao[[3]][, "std.r"] ),
                      row.names = c(paste0(tennhanto, "Alpha"),
                                    paste0("Items", names(dauvao[["keys"]]))))
  return(tempt)
}

aPU <- fun1( alpha(d %>% select(PU1,    PU2,    PU3 )), "PU")
aPEU <- fun1( alpha(d %>% select(PEU1,  PEU2,  PEU3 )), "PEU")
aENJ <- fun1( alpha(d %>% select(ENJ1,  ENJ2 )) , "ENJ")
aQU <- fun1( alpha(d %>% select( Qu1,  Qu2,    Qu3,    Qu4,    Qu5), 'check.keys=TRUE'), "Qu")
aVis <- fun1( alpha(d %>% select(Vis1,  Vis2,  Vis3)), "Vis")
aIm <- fun1( alpha(d %>% select( Im1,    Im2,  Im3 )), "Im")
aSA <- fun1( alpha(d %>% select(SA1,    SA2,    SA3 )), "SA")
aUse <- fun1( alpha(d %>% select( Use1,  Use2,  Use3,  Use4,  Use5 )), "Use")

All_alpha <- rbind(aPU, aPEU, aENJ, aQU, aVis, aIm, aSA, aUse )
All_alpha$value <- round(All_alpha$value, 2)
All_alpha

Xuất file dưới dạng .csv để chỉnh sửa thêm

write.csv(All_alpha, file = "All_alpha.csv")