Mã hóa biến là gì? Cách mã hóa biến trong SPSS đúng cách

Khảo sát··14 phút đọc

Mã hóa biến là gì

Mã hóa biến là việc quy ước cách biến một thông tin trong bảng hỏi thành tên biến, mã số và giá trị để phần mềm như SPSS đọc được. Ví dụ, câu hỏi “Giới tính của bạn?” có thể được mã hóa thành biến GIOITINH, trong đó 1 = Nam, 2 = Nữ, 3 = Khác. Với câu hỏi Likert, bạn có thể đặt HL1, HL2, HL3 cho ba biến quan sát của thang đo hài lòng và dùng các giá trị từ 1 đến 5.

Một bản mã hóa đầy đủ thường có bốn phần: mã biến, nhãn biến, nhãn giá trị và loại thang đo. Mã biến là tên ngắn dùng trong cột dữ liệu. Nhãn biến mô tả nội dung biến. Nhãn giá trị giải thích ý nghĩa của từng con số. Loại thang đo cho biết biến thuộc Nominal, Ordinal, Scale hay cách phân loại tương đương trong phần mềm.

Bạn có thể hình dung quy trình như sau:

câu hỏi trong bảng hỏi → mã biến → mã giá trị → cột dữ liệu trong SPSS → phân tích

Mã hóa biến không làm thay đổi bản chất câu trả lời. Nó chỉ tạo một quy ước nhất quán để dữ liệu từ bảng hỏi giấy, Google Forms hoặc biểu mẫu trực tuyến được đưa vào file .sav hay .csv mà không bị lẫn ý nghĩa. Nếu bạn đang phân biệt biến định danh, thứ bậc và định lượng, hãy xem thêm bài thang đo định danh là gì để chọn cách mã hóa phù hợp.

Ý nghĩa của mã hóa biến trong nghiên cứu định lượng

Khi mã hóa đúng, bạn biết chính xác mỗi cột trong Data View đại diện cho điều gì. Điều này ảnh hưởng trực tiếp đến việc chạy Frequency, Descriptives, Cronbach's Alpha, EFA, hồi quy và các kiểm định tiếp theo. Một mã biến mơ hồ như C1, C2, C3 có thể vẫn dùng được, nhưng nếu không có Variable Label thì vài tuần sau bạn rất dễ quên chúng đo khái niệm nào.

Mã hóa còn giúp bạn giữ nguyên cấu trúc thang đo. Chẳng hạn, các biến CLDV1 đến CLDV5 cùng đo chất lượng dịch vụ, còn HL1 đến HL4 đo sự hài lòng. Khi đọc bảng Reliability StatisticsItem-Total Statistics, bạn có thể nhận ra biến nào thuộc cùng một nhóm thay vì dò lại từng câu hỏi.

Một lợi ích khác là hạn chế lỗi khi nhập liệu. Nếu câu trả lời “Đồng ý” lúc được nhập thành 4, lúc thành 04, lúc thành chữ đồng ý, SPSS có thể xem chúng là các giá trị khác nhau hoặc chuyển cả cột thành dạng String. Khi đó, phép tính trung bình và các phân tích cần biến số sẽ gặp lỗi.

Bạn cũng cần tách mã hóa dữ liệu khỏi việc chọn thang đo. Với một biến giới tính, các số 1, 2, 3 chỉ là nhãn phân loại, không có nghĩa “3 nhiều hơn 1”. Với thang Likert, các mức 1 đến 5 thể hiện thứ tự tăng dần của mức độ đồng ý, theo cách thiết kế của bảng hỏi. Còn biến tuổi hoặc thu nhập có thể là biến định lượng thực sự. Nếu cần xem cách phân biệt các loại thang đo, bạn có thể đọc thang đo Likertthang đo tỷ lệ là gì.

Mã hóa biến bao nhiêu là đạt

Không có một con số duy nhất trả lời cho câu hỏi “mã hóa biến bao nhiêu là tốt”. Mã 1, 2, 3 hay 0, 1, 2 đều có thể hợp lệ nếu bạn quy định rõ, dùng nhất quán và không làm sai thứ tự của thang đo. Tiêu chí quan trọng là người khác có thể mở file, đọc codebook và hiểu đúng dữ liệu mà không phải đoán.

Với biến định danh, số mã chỉ là nhãn. Với biến thứ bậc và Likert, mã phải đi theo thứ tự tăng dần của mức độ. Với biến định lượng, bạn nhập giá trị đo thật, chẳng hạn 19, 20, 21 cho tuổi, thay vì tự chuyển tuổi thành 1, 2, 3 nếu không có lý do nghiên cứu rõ ràng.

Bảng dưới đây là các quy ước thường dùng. Các ngưỡng về độ tin cậy và số lượng quan sát không phải điều kiện của bản thân việc đặt mã, nhưng giúp bạn kiểm tra xem mã hóa có phù hợp với bước phân tích dự kiến hay không.

Nội dung cần kiểm traQuy ước hoặc ngưỡng tham khảoNguồn canonical
Mã biếnNgắn, duy nhất, không trùng tên và phản ánh khái niệm đo(Nguyễn Đình Thọ, 2011)
Mã LikertCác mức phải tăng theo cùng một chiều, chẳng hạn 1 đến 5(Likert, 1932)
Số biến quan sát trên một khái niệmCó thể tham khảo từ 5 đến 10 quan sát cho mỗi biến theo kế hoạch cỡ mẫu(Hair và cộng sự, 2010)
Corrected Item-Total CorrelationTừ 0.3 trở lên thường được xem là đạt(Nunnally và Bernstein, 1994)
Cronbach's AlphaTừ 0.7 trở lên; thang đo khám phá có thể xem xét từ 0.6(Nunnally, 1978) và (Hair và cộng sự, 2010)
KMO khi chạy EFATừ 0.5 trở lên(Kaiser, 1974)
Factor loading khi chạy EFATừ 0.5 trở lên(Hair và cộng sự, 2010)

Vì vậy, câu hỏi “mã hóa biến bao nhiêu là tốt” cần được trả lời theo loại biến. Mã 1 = Nam, 2 = Nữ là đủ nếu đây là biến định danh. Mã Likert từ 1 đến 5 là hợp lý nếu bảng hỏi có năm mức. Bạn không nên đổi mã chỉ để làm cho số trung bình đẹp hơn.

Cách đọc mã hóa biến trên output

Trong SPSS, bạn kiểm tra mã hóa ở hai nơi. Tại Variable View, xem các cột Name, Label, Values, MissingMeasure. Tại Data View, xem mỗi cột là một biến và mỗi dòng là một phiếu trả lời. Nếu nhập file .csv, cần kiểm tra lại dấu phân cách, tên cột và kiểu dữ liệu trước khi chạy phân tích.

Ví dụ, bạn có biến HL1 với nhãn “Tôi hài lòng với chất lượng dịch vụ”. Trong cột Values, bạn đặt 1 = Hoàn toàn không đồng ý, 2 = Không đồng ý, 3 = Phân vân, 4 = Đồng ý, 5 = Hoàn toàn đồng ý. Cột Measure có thể đặt là Scale khi bạn xử lý các biến Likert như thang đo tổng hợp trong nhiều phân tích định lượng. Điều quan trọng là cách đặt này phải phù hợp với phương pháp và hướng dẫn của đề tài.

Bảng dưới đây mô phỏng một phần dữ liệu và output. Đây là số liệu minh họa, không phải kết quả của một nghiên cứu thật.

VariableLabelValuesValid NMeanStd. Deviation
HL1Hài lòng với chất lượng dịch vụ1 đến 51823.860.781
HL2Hài lòng với khả năng đáp ứng1 đến 51823.720.846
HL3Sẵn sàng tiếp tục sử dụng1 đến 51813.940.804
GIOITINHGiới tính1 Nam, 2 Nữ, 3 Khác1821.680.512

Dòng GIOITINH cho thấy một điểm dễ nhầm. Mean của biến giới tính không có ý nghĩa như Mean của HL1, vì 1 và 2 chỉ là mã phân loại. Với biến này, bạn nên xem bảng Frequencies để biết số lượng và tỷ lệ từng nhóm. Với các biến HL1, HL2 và HL3, bạn có thể xem Descriptives và sau đó chạy độ tin cậy nếu chúng thuộc cùng một thang đo.

Nếu muốn xem phân bố mã, chọn Analyze > Descriptive Statistics > Frequencies. Nếu muốn kiểm tra trung bình và độ lệch chuẩn, chọn Analyze > Descriptive Statistics > Descriptives. Đừng chỉ nhìn con số trong output mà bỏ qua Value Labels. Một bảng có số 1 đến 5 nhưng không có nhãn giá trị sẽ khó giải trình khi giảng viên hỏi ý nghĩa của từng mức.

Khi mã hóa biến không đạt thì xử lý thế nào

Mã hóa biến không đạt thường biểu hiện bằng việc có mã ngoài khoảng đã quy định, nhiều ô trống, một cột bị nhận dạng là String, hoặc các biến trong cùng một thang đo đi ngược chiều. Bạn xử lý theo thứ tự từ lỗi dữ liệu đến lỗi thiết kế, vì sửa trong SPSS không thể tạo ra thông tin mà bảng hỏi chưa thu được.

Bước 1: Kiểm tra mã ngoài quy ước

Chọn Analyze > Descriptive Statistics > Frequencies và đưa biến cần kiểm tra vào ô Variable(s). Nếu thang Likert chỉ có giá trị 1 đến 5 nhưng output xuất hiện 0, 6 hoặc 99, hãy truy lại bảng hỏi và file gốc. Mã 99 đôi khi được dùng cho câu trả lời thiếu, nhưng phải khai báo trong Missing và dùng nhất quán.

Bước 2: Kiểm tra biến bị nhập thành chữ

Tại Variable View, xem cột Type. Nếu biến HL1 đang là String, các phép tính trung bình và Cronbach's Alpha có thể không chạy đúng. Bạn cần xác định nguyên nhân, sau đó chuyển đổi bằng Transform > Automatic Recode hoặc nhập lại dữ liệu có kiểm soát. Không nên đổi chữ sang số bằng cách đoán thứ tự khi dữ liệu gốc chưa rõ.

Bước 3: Kiểm tra câu hỏi đảo chiều

Nếu bảng hỏi có biến phủ định, chẳng hạn “Tôi thường gặp nhiều khó khăn khi sử dụng dịch vụ”, mã cao có thể biểu thị đánh giá xấu trong khi các biến còn lại mã cao biểu thị đánh giá tốt. Khi thang đo yêu cầu cùng chiều, dùng Transform > Compute Variable để tạo biến đảo chiều. Với thang 1 đến 5, công thức thường có dạng biến_mới = 6 - biến_cũ, nhưng chỉ dùng khi đúng là thang năm mức và câu hỏi được thiết kế để đảo chiều.

Bước 4: Ghi lại từng lần chỉnh sửa

Lưu một file dữ liệu gốc chỉ đọc, một file làm sạch và một bảng codebook. Ghi rõ biến nào được đổi tên, giá trị nào được xem là missing, biến nào được đảo chiều và lý do. Nếu một biến vẫn không phù hợp sau khi kiểm tra, việc loại biến cần dựa vào nội dung thang đo, kết quả thống kê và lập luận phương pháp, không chỉ vì muốn output đẹp.

Nếu biến đại diện được tạo từ nhiều biến quan sát, bạn cần hiểu nó khác với mã của từng câu hỏi. Bài biến đại diện là gì sẽ giúp bạn phân biệt biến quan sát, biến tổng hợp và cách diễn giải chúng trong mô hình.

Phân biệt mã hóa biến với nhập dữ liệu và biến đại diện

Mã hóa biến là quy ước ý nghĩa. Nhập dữ liệu là đưa câu trả lời theo quy ước đó vào phần mềm. Hai việc này liên quan nhưng không giống nhau. Bạn có thể mã hóa đúng trong codebook nhưng nhập sai một cột, khiến kết quả vẫn sai.

Mã hóa cũng khác với tạo biến đại diện. Ví dụ, HL1, HL2, HL3 là ba biến quan sát. Sau khi kiểm tra thang đo, bạn có thể tính trung bình của chúng để tạo biến HAILONG. Việc đặt tên HAILONG là mã hóa cho biến mới, còn phép tính trung bình là thao tác tạo biến.

Một nhầm lẫn khác là nghĩ mã 1 luôn thấp hơn mã 2 về mặt định lượng. Với giới tính, ngành học hoặc khu vực cư trú, điều này không đúng. Với mức độ đồng ý, thứ tự mã có ý nghĩa thứ bậc, nhưng khoảng cách giữa các mức vẫn cần được xử lý theo thiết kế phân tích. Bạn có thể xem thêm nhóm tài liệu về chủ đề Khảo sát để kiểm tra mối liên hệ giữa bảng hỏi, loại biến và kế hoạch phân tích.

Lỗi thường gặp

Lỗi phổ biến nhất là đặt tên biến có dấu tiếng Việt, khoảng trắng hoặc ký tự đặc biệt. Hãy dùng tên ngắn như TUOI, GT, HL1, DV2, sau đó viết diễn giải đầy đủ ở cột Label. Cách này giúp lệnh và output dễ đọc hơn.

Lỗi thứ hai là dùng cùng một mã cho hai ý nghĩa khác nhau. Chẳng hạn 1 vừa có nghĩa “Nam” ở biến giới tính, vừa có nghĩa “Hoàn toàn không đồng ý” ở biến Likert. Việc dùng lại con số không sai nếu bạn xem từng biến độc lập, nhưng thiếu Value Labels sẽ tạo ra nhầm lẫn khi kiểm tra dữ liệu.

Lỗi thứ ba là nhập mức thiếu thành số 0 dù bảng hỏi không có mức 0. Khi đó, Mean và các kiểm định sẽ bị kéo xuống. Hãy thống nhất một quy ước missing, khai báo trong Variable View và kiểm tra số lượng Valid N trước khi phân tích.

Lỗi thứ tư là đảo chiều toàn bộ thang đo thay vì chỉ đảo biến phủ định. Bạn cần đọc lại nguyên văn từng biến quan sát. Nếu không chắc, đối chiếu bảng hỏi gốc và ghi chú trước khi chạy lại Cronbach's Alpha.

Lỗi cuối cùng là xóa mã hoặc đổi tên biến giữa các vòng phân tích mà không lưu phiên bản. Khi bị hỏi vì sao một biến xuất hiện trong bảng hỏi nhưng không có trong output, bạn cần mở được lịch sử xử lý và giải thích bằng dữ liệu, không bằng trí nhớ.

Câu hỏi thường gặp

Mã hóa biến có bắt buộc phải dùng số không?

Trong SPSS, biến phân loại có thể được lưu dưới dạng chữ, nhưng dùng số kèm Value Labels thường thuận tiện hơn cho việc lọc, lập bảng tần số và phân tích. Bạn cần giữ codebook để biết mỗi số có nghĩa gì.

Mã hóa biến bao nhiêu là tốt với thang Likert?

Nếu bảng hỏi dùng năm mức, quy ước phổ biến là từ 1 đến 5, trong đó mức thấp và cao được định nghĩa rõ. Nếu dùng bảy mức, hãy dùng 1 đến 7. Không đổi số mức sau khi đã thu thập dữ liệu nếu chưa có lý do phương pháp rõ ràng.

Mã hóa biến trong SPSS nằm ở đâu?

Bạn đặt tên và nhãn tại Variable View, đặc biệt ở các cột Name, Label, Values, MissingMeasure. Data View là nơi nhập từng dòng trả lời. Sau đó dùng Analyze > Descriptive Statistics > Frequencies để kiểm tra các mã thực tế đã xuất hiện.

Có được dùng mã 0 cho câu trả lời không?

Có, nếu bảng hỏi thực sự có mức 0 hoặc bạn quy định 0 là một mã hợp lệ. Nếu 0 dùng để đại diện cho câu hỏi bỏ trống, bạn phải khai báo nó là Missing và không được để lẫn với giá trị trả lời thật.

Có nên xóa biến khi mã hóa bị sai không?

Chỉ xóa khi bạn đã kiểm tra file gốc, nội dung biến và mục tiêu phân tích. Nếu sai do nhập liệu, sửa từ dữ liệu gốc và lưu phiên bản mới. Nếu sai do bảng hỏi không đo đúng khái niệm, hãy ghi nhận giới hạn thay vì chỉ xóa để làm đẹp output.

Mở file SPSS của bạn ngay bây giờ, tạo một bảng codebook gồm mã biến, nhãn biến, mã giá trị và ghi chú missing, rồi kiểm tra từng cột bằng Frequencies. Nếu bạn cần chạy phân tích trên chính file .sav hoặc .csv sau bước làm sạch, M4 phân tích của DoThesis có thể hỗ trợ bạn đi từ dữ liệu thật đến output có thể giải trình.