Bỏ qua điều hướng
  1. Trang chủ
  2. Hướng dẫn
  3. Xuất dữ liệu Google Form sang SPSS
Bước 5/10 · Dữ liệu và thang đo

Xuất dữ liệu Google Form sang SPSS: từ file CSV đến dữ liệu sẵn sàng phân tích

Hướng dẫn từng bước đưa câu trả lời Google Form vào IBM SPSS mà không lỗi dấu, không mã hóa sai thang đo và không mất dấu dòng dữ liệu nào.

  • Đội ngũ AutoFillForm
  • Cập nhật
  • 9 phút đọc

Tóm tắt nhanh

  • Ưu tiên Liên kết với Trang tính rồi tải Microsoft Excel (.xlsx): ít lỗi phông tiếng Việt hơn CSV và giữ được cả sheet codebook.
  • Giữ nguyên sheet gốc, làm việc trên bản sao, đổi tiêu đề câu hỏi dài thành mã ngắn như TC1, TC2 và lập codebook.
  • Không dùng Automatic Recode cho thang Likert dạng chữ: SPSS đánh số theo thứ tự chữ cái nên "Bình thường" có thể thành 1, còn "Hoàn toàn không đồng ý" lại nhận mã lớn hơn "Đồng ý".
  • Câu Hộp kiểm (Checkboxes) xuất nhiều đáp án trong một ô, cần tách thành các biến giả 0/1.
  • Sau khi import, chạy Frequencies để bắt giá trị ngoài thang và giá trị thiếu trước khi chạy Cronbach's Alpha.

Quy trình tổng thể trong 6 bước

Muốn xuất dữ liệu Google Form sang SPSS cho sạch, bạn cần nhiều hơn một cú nhấp "Tải xuống". Phần lớn lỗi khi phân tích (thang đo lệch, Alpha âm, tiếng Việt thành ký tự lạ) bắt nguồn từ khâu chuẩn bị dữ liệu. Thứ tự nên làm:

  1. Xuất câu trả lời từ Google Form (CSV hoặc qua Google Sheets).
  2. Làm sạch trên bản sao: đặt mã biến, lập codebook, loại dòng không hợp lệ.
  3. Import vào SPSS ở chế độ Unicode.
  4. Mã hóa chữ thành số, tách câu Hộp kiểm, đảo chiều câu nghịch.
  5. Khai báo Variable View.
  6. Kiểm tra bằng Frequencies.

Nếu bảng hỏi còn đang thiết kế, hãy đọc trước cách tạo Google Form khảo sát chuẩn: chọn đúng loại câu hỏi từ đầu giúp bạn bỏ qua gần hết bước mã hóa.

Hai cách xuất dữ liệu từ Google Form

Cách 1: Tải trực tiếp file CSV

Trong Google Form, mở thẻ Câu trả lời (Responses), bấm biểu tượng ⋮ rồi chọn Tải câu trả lời xuống (.csv) (Download responses). Google tải về một tệp .zip chứa file CSV (Google, n.d.). Cách này nhanh nhưng chỉ là ảnh chụp tại thời điểm tải.

Cách 2: Liên kết với Google Sheets rồi tải .xlsx

Cũng trong thẻ Câu trả lời, chọn Liên kết với Trang tính (Link to Sheets) và tạo bảng tính mới. Mọi phản hồi mới sẽ tự đổ về sheet này. Khi đã xong thu thập và làm sạch, vào Tệp → Tải xuống → Microsoft Excel (.xlsx) (File → Download), hoặc chọn định dạng CSV nếu cần.

Nên ưu tiên .xlsx vì hai lý do. Thứ nhất, .xlsx lưu văn bản dạng Unicode nên SPSS đọc đúng dấu tiếng Việt mà không cần chọn bảng mã. Thứ hai, CSV chỉ xuất sheet đang mở, còn .xlsx giữ cả sheet dữ liệu lẫn codebook. CSV vẫn dùng tốt cho công cụ chỉ nhận CSV, miễn giữ nguyên mã hóa UTF-8.

Chuẩn bị dữ liệu trên Google Sheets

Giữ nguyên dữ liệu gốc

Không sửa trực tiếp sheet mà Google Form ghi vào. Hãy nhân bản sheet (chuột phải vào tên sheet → Sao chép) và chỉ làm việc trên bản sao. Khi có nghi vấn, bạn luôn đối chiếu được với dữ liệu thô.

Đổi tiêu đề dài thành mã biến và lập codebook

Google Sheets dùng nguyên văn câu hỏi làm tiêu đề cột, không hợp lệ làm tên biến SPSS. Hãy thay bằng mã ngắn theo nhóm khái niệm (TC1, TC2… cho "Tin cậy"; HL1, HL2… cho "Hài lòng") và tạo một sheet riêng tên codebook:

Ví dụ sheet codebook
Mã biếnCâu hỏi đầy đủThang đoNhãn giá trịGhi chú
TC1Nhân viên giải quyết yêu cầu của tôi đúng hẹnLikert 1–51 = Hoàn toàn không đồng ý … 5 = Hoàn toàn đồng ý
TC4Tôi thường phải hỏi lại nhiều lần mới được giải đápLikert 1–5Như TC1Câu đảo chiều
GIOITINHGiới tính của anh/chịĐịnh danh1 = Nam, 2 = Nữ, 3 = Khác
GOPYGóp ý khác (câu mở)Văn bảnKhông mã hóaGiữ dạng chuỗi

Loại dòng không hợp lệ

  • Phản hồi thử: xóa các dòng bạn tự điền khi kiểm tra form, nhận diện qua cột Dấu thời gian (Timestamp) trước ngày phát link chính thức.
  • Không đạt câu gạn lọc: loại người trả lời "Chưa từng sử dụng dịch vụ" nếu đối tượng nghiên cứu là khách hàng đã sử dụng. Chỉ áp dụng tiêu chí đã ghi trong đề cương.
  • Trùng lặp: dùng Dữ liệu → Dọn dẹp dữ liệu → Xóa bản sao (Data → Data cleanup → Remove duplicates) hoặc trong SPSS là Data → Identify Duplicate Cases. Chỉ coi là trùng khi hai dòng giống hệt nhau trên mọi cột, kể cả câu mở.

Import vào SPSS và xử lý tiếng Việt

Bật chế độ Unicode trước

Vào Edit → Options, thẻ Language, mục Character Encoding for Data and Syntax, chọn Unicode (universal character set). Tùy chọn này chỉ đổi được khi chưa mở bộ dữ liệu nào. Bản SPSS gần đây mặc định Unicode, nhưng máy phòng lab đôi khi vẫn để chế độ theo ngôn ngữ hệ thống (IBM, n.d.).

Import file Excel hoặc CSV

Dùng File → Import Data → Excel cho tệp .xlsx, chọn đúng sheet dữ liệu (không phải sheet codebook) và tích Read variable names from first row of data. Với CSV, dùng File → Import Data → CSV Data, đặt dấu phân cách là dấu phẩy và text qualifier là dấu nháy kép, vì câu mở có thể chứa dấu phẩy. Nếu chữ tiếng Việt vẫn lỗi, hãy import qua File → Import Data → Text Data và chọn mã hóa UTF-8 ở trình hướng dẫn, hoặc dùng cú pháp GET DATA /TYPE=TXT kèm /ENCODING='UTF8'.

Mã hóa câu trả lời chữ thành số

Câu Phạm vi tuyến tính (Linear scale) xuất ra số 1–5 nên vào SPSS là dùng được ngay. Câu Trắc nghiệm (Multiple choice) và Lưới trắc nghiệm (Multiple choice grid) xuất ra đúng chữ của lựa chọn, nên SPSS nhận là biến chuỗi (String) và mọi phân tích định lượng đều cần bước mã hóa. Đây là lý do bài thang đo Likert trên Google Form khuyên dùng Linear scale cho câu Likert.

Bẫy Automatic Recode

Nhiều bạn dùng Transform → Automatic Recode cho nhanh. Lệnh này đánh số theo thứ tự chữ cái của chuỗi, không theo ý nghĩa thang đo, nên kết quả sai hoàn toàn:

Automatic Recode (sai) so với mã hóa đúng
Câu trả lờiAutomatic RecodeMã đúng
Bình thường13
Đồng ý24
Hoàn toàn đồng ý35
Hoàn toàn không đồng ý41
Không đồng ý52

Thứ tự cụ thể có thể khác đôi chút tùy cách SPSS sắp xếp ký tự có dấu, nhưng không bao giờ trùng với thứ tự Likert. Hậu quả thường gặp là Alpha thấp bất thường hoặc tương quan âm khó hiểu.

Recode đúng cách

Dùng Transform → Recode into Different Variables với từng cặp Old Value → New Value, hoặc chạy cú pháp. Mẹo: đặt tên cột chữ là TC1_TXT để biến số sau mã hóa mang tên TC1:

RECODE TC1_TXT
  ('Hoàn toàn không đồng ý'=1) ('Không đồng ý'=2) ('Bình thường'=3)
  ('Đồng ý'=4) ('Hoàn toàn đồng ý'=5) (ELSE=SYSMIS)
  INTO TC1.
* Cột số bị nhận nhầm thành chuỗi (ví dụ tuổi).
RECODE TUOI_TXT (CONVERT) INTO TUOI.
EXECUTE.

Chuỗi trong RECODE phải khớp chính xác cả chữ hoa và dấu. Nếu TC1 có nhiều ô SYSMIS hơn số ô trống của TC1_TXT, có lựa chọn bạn gõ chưa khớp.

Câu Hộp kiểm và câu mở

Câu Hộp kiểm (Checkboxes) ghi mọi lựa chọn vào một ô, ngăn cách bằng dấu phẩy, ví dụ "Facebook, Zalo". Hãy tách mỗi lựa chọn thành một biến giả 0/1:

COMPUTE KENH_FB = CHAR.INDEX(KENH, 'Facebook') > 0.
COMPUTE KENH_ZALO = CHAR.INDEX(KENH, 'Zalo') > 0.
VALUE LABELS KENH_FB KENH_ZALO 0 'Không chọn' 1 'Có chọn'.
EXECUTE.

Điều kiện: tên lựa chọn không chứa dấu phẩy và không nằm trong tên lựa chọn khác. Câu mở (Đoạn, Câu trả lời ngắn) nên giữ dạng chuỗi để trích dẫn, hoặc mã hóa thủ công thành nhóm chủ đề trong biến riêng.

Thiết lập Variable View và cú pháp SPSS

Trong Variable View, tối thiểu cần chỉnh đúng các cột sau:

  • Name: bắt đầu bằng chữ cái, không có khoảng trắng, không trùng nhau, tối đa 64 byte, tránh kết thúc bằng dấu chấm. Không dùng dấu tiếng Việt: ký tự có dấu chiếm nhiều byte và dễ lỗi khi chia sẻ tệp.
  • Label: câu hỏi đầy đủ, có dấu.
  • Values: nhãn cho từng mã, ví dụ 1 = Hoàn toàn không đồng ý.
  • Missing: mã dành cho giá trị thiếu (ví dụ 9), nếu bạn dùng mã thay vì để trống.
  • Measure: Scale cho biến định lượng (tuổi, thu nhập), Ordinal cho câu Likert, Nominal cho giới tính, nghề nghiệp. Cột này chủ yếu ảnh hưởng đến biểu đồ và thủ tục SPSS gợi ý.

Câu đảo chiều (TC4) phải được đảo trước khi tính điểm hay độ tin cậy. Khối cú pháp dưới đây khai báo các thông tin trên và đảo TC4 thành biến mới TC4R, giữ nguyên biến gốc:

VARIABLE LABELS
  TC1 'Nhân viên giải quyết yêu cầu của tôi đúng hẹn'
  /TC4 'Tôi thường phải hỏi lại nhiều lần mới được giải đáp'
  /GIOITINH 'Giới tính'.
VALUE LABELS TC1 TO TC4
    1 'Hoàn toàn không đồng ý' 2 'Không đồng ý' 3 'Bình thường'
    4 'Đồng ý' 5 'Hoàn toàn đồng ý'
  /GIOITINH 1 'Nam' 2 'Nữ' 3 'Khác'.
MISSING VALUES TC1 TO TC4 GIOITINH (9).
VARIABLE LEVEL TC1 TO TC4 (ORDINAL)
  /GIOITINH (NOMINAL)
  /TUOI (SCALE).
RECODE TC4 (1=5) (2=4) (3=3) (4=2) (5=1) INTO TC4R.
VARIABLE LABELS TC4R 'TC4 (đã đảo chiều)'.
VALUE LABELS TC4R
    1 'Hoàn toàn không đồng ý' 2 'Không đồng ý' 3 'Bình thường'
    4 'Đồng ý' 5 'Hoàn toàn đồng ý'.
EXECUTE.

Từ khóa TO chỉ đúng khi TC1 đến TC4 nằm liền nhau trong tệp. Hãy lưu khối lệnh thành tệp .sps để chạy lại khi cần.

Nếu dùng phân hệ SPSS của AutoFillForm, trang xuất dữ liệu SPSS cho tải CSV mã số, CSV nhãn và tệp .sps có sẵn nhãn biến, nhãn giá trị; import CSV kiểm tra một tệp CSV có sẵn theo mô hình. Dữ liệu mô phỏng chỉ dùng để thử bảng hỏi và luyện cú pháp, không thay thế dữ liệu khảo sát thật.

Kiểm tra dữ liệu sau khi import

Trước mọi kiểm định, chạy Analyze → Descriptive Statistics → Frequencies cho tất cả biến đã mã hóa và đọc hai điểm: giá trị nằm ngoài thang (0, 6 hay 55 trong thang 1–5) và số giá trị thiếu (Missing) của mỗi biến. Field (2018) và Tabachnick & Fidell (2013) đều coi sàng lọc dữ liệu là bước bắt buộc, vì một lỗi nhập liệu đủ làm lệch mọi hệ số phía sau.

FREQUENCIES VARIABLES=TC1 TO TC4 TC4R GIOITINH
  /STATISTICS=MINIMUM MAXIMUM
  /ORDER=ANALYSIS.
  • Câu bắt buộc mà có Missing thường do mã hóa chưa khớp.
  • Ô trống do rẽ nhánh là "không áp dụng", cần tách khỏi giá trị thiếu thật.
  • Khi tỷ lệ thiếu nhỏ và ngẫu nhiên, các cách xử lý thường cho kết quả tương tự; tỷ lệ lớn hơn cần xem xét cơ chế thiếu (Tabachnick & Fidell, 2013). Ghi rõ quyết định vào báo cáo.

Khi dữ liệu đã sạch, bước tiếp theo trong lộ trình là kiểm định Cronbach's Alpha cho từng thang đo (Hoàng Trọng & Chu Nguyễn Mộng Ngọc, 2008).

Checklist trước khi phân tích

  • Đã lưu bản gốc từ Google Form và chỉ chỉnh sửa trên bản sao.
  • Tiêu đề cột là mã biến ngắn, không dấu, không trùng; có codebook.
  • Đã loại phản hồi thử, không đạt gạn lọc, trùng lặp và ghi lại số lượng.
  • SPSS đang ở chế độ Unicode; chữ tiếng Việt trong Data View hiển thị đúng.
  • Câu Likert dạng chữ đã được recode thủ công đúng thứ tự 1–5, không dùng Automatic Recode.
  • Câu Hộp kiểm đã tách thành biến 0/1; câu mở giữ dạng chuỗi hoặc đã mã hóa riêng.
  • Câu đảo chiều đã có biến mới (TC4R) dùng thay biến gốc.
  • Label, Values, Missing, Measure đã khai báo; cú pháp được lưu thành tệp .sps.
  • Frequencies không còn giá trị ngoài thang; số dòng khớp với số phiếu hợp lệ đã báo cáo.

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

Nên liên kết form với Google Sheets rồi tải Microsoft Excel (.xlsx). Tệp .xlsx lưu chữ dạng Unicode nên SPSS đọc đúng dấu tiếng Việt và giữ được nhiều sheet, kể cả codebook. CSV vẫn dùng được nếu bạn import với mã hóa UTF-8 và không mở rồi lưu đè bằng Excel, vì thao tác đó dễ làm hỏng ký tự có dấu.
Thường do SPSS đang ở chế độ mã hóa theo ngôn ngữ hệ thống, hoặc tệp CSV đã bị Excel lưu lại bằng bảng mã khác. Hãy đóng mọi bộ dữ liệu, vào Edit, Options, thẻ Language và chọn Unicode cho Character Encoding for Data and Syntax, sau đó import lại từ tệp gốc tải từ Google, ưu tiên định dạng .xlsx.
Không. Automatic Recode đánh số theo thứ tự chữ cái của chuỗi, nên "Bình thường" có thể thành 1 và "Không đồng ý" thành 5, đảo lộn ý nghĩa thang đo. Hãy dùng Recode into Different Variables hoặc lệnh RECODE với từng cặp giá trị, rồi đối chiếu bảng tần số trước và sau khi mã hóa để chắc chắn không có ô nào bị bỏ sót.
Google Form ghi mọi lựa chọn vào một ô, ngăn cách bằng dấu phẩy. Bạn nên tạo cho mỗi lựa chọn một biến giả nhận 1 nếu được chọn và 0 nếu không, ví dụ bằng hàm CHAR.INDEX trong lệnh COMPUTE. Sau đó có thể chạy tần số từng biến hoặc gom thành Multiple Response Set để báo cáo tỷ lệ chọn.
Về kỹ thuật, chế độ Unicode cho phép, nhưng không nên. Tên biến giới hạn 64 byte và ký tự có dấu chiếm nhiều byte, lại dễ lỗi khi mở trên máy khác hoặc phần mềm khác như SmartPLS. Hãy dùng mã ngắn không dấu như TC1, HL2 và đưa câu hỏi đầy đủ có dấu vào cột Label.

Nguồn tham khảo

  1. IBM. (n.d.). IBM SPSS Statistics documentation. https://www.ibm.com/docs/en/spss-statistics
  2. Google. (n.d.). Docs Editors Help: Google Forms. https://support.google.com/docs
  3. Field, A. (2018). Discovering statistics using IBM SPSS Statistics (5th ed.). SAGE Publications.
  4. Tabachnick, B. G., & Fidell, L. S. (2013). Using multivariate statistics (6th ed.). Pearson.
  5. Hoàng Trọng, & Chu Nguyễn Mộng Ngọc. (2008). Phân tích dữ liệu nghiên cứu với SPSS (Tập 1 và 2). NXB Hồng Đức.

Ngưỡng đánh giá trong bài là quy ước phổ biến trong các tài liệu trên. Hãy đối chiếu với yêu cầu của giảng viên hướng dẫn hoặc tạp chí bạn nộp bài.

100 credit cho tài khoản mới

Bắt đầu với biểu mẫu của bạn

Import, cấu hình và xem chi phí trước khi chạy.

Tạo tài khoản miễn phí