Cách chạy phân tích cụm trong SPSS từ A đến Z

SPSS··15 phút đọc

Khi nào dùng phân tích cụm trong SPSS

Phân tích cụm, hay Cluster Analysis, dùng để chia các quan sát thành những nhóm tương đối đồng nhất bên trong nhóm và khác nhau giữa các nhóm. Ví dụ, bạn có thể phân nhóm khách hàng theo mức chi tiêu, tần suất mua và mức độ hài lòng, hoặc chia sinh viên theo động cơ học tập, thời gian tự học và kết quả học tập.

Phân tích cụm phù hợp khi câu hỏi nghiên cứu có dạng: “Các đối tượng khảo sát có thể được chia thành những nhóm nào dựa trên các đặc điểm X, Y, Z?”. Đây là kỹ thuật khám phá, vì bạn thường chưa biết trước có bao nhiêu nhóm và nhóm nào sẽ xuất hiện. Kết quả phân cụm không trực tiếp kiểm định giả thuyết nhân quả như hồi quy.

Nếu giả thuyết của bạn hỏi tác động của biến độc lập lên biến phụ thuộc, hãy xem các chủ đề SPSS phù hợp với hồi quy, ANOVA hoặc PROCESS. Nếu bạn muốn kiểm tra một quan hệ thay đổi theo nhóm hoặc theo điều kiện, khái niệm biến điều tiết sẽ gần với câu hỏi đó hơn phân tích cụm.

Có ba thủ tục thường bị gọi lẫn với nhau. Hierarchical Cluster tạo cây phân cấp và giúp khám phá số cụm. K-Means Cluster phân bổ quan sát vào số cụm đã xác định. Discriminant Analysis, thường được gọi là phân tích biệt số SPSS, dùng sau đó để kiểm tra khả năng phân biệt hoặc dự đoán nhóm đã có. Vì vậy, “cách chạy phân tích biệt số trong SPSS” không phải là một tên khác của phân tích cụm.

Chuẩn bị dữ liệu trước khi chạy

Bạn nên tạo một dòng cho mỗi đối tượng khảo sát và một cột cho mỗi biến dùng để phân cụm. Các biến này phải ở dạng số, chẳng hạn điểm trung bình của thang đo, doanh thu, số lần mua hoặc số giờ sử dụng. Không đưa mã người trả lời, số điện thoại, tên cửa hàng hay biến định danh vào thuật toán.

Nếu các biến có đơn vị rất khác nhau, hãy cân nhắc chuẩn hóa trước khi phân cụm. Khoảng cách Euclidean có thể bị biến có độ lớn tuyệt đối lớn chi phối. Chẳng hạn, thu nhập tính bằng triệu đồng và mức hài lòng trên thang 1 đến 5 không có cùng đơn vị. Trong trường hợp này, bạn có thể tạo z-score bằng Analyze > Descriptive Statistics > Descriptives, chọn Save standardized values as variables.

Kiểm tra missing values tại Analyze > Descriptive Statistics > Frequencies. Một số thủ tục sẽ loại cả dòng nếu thiếu một biến, làm cỡ mẫu thực tế nhỏ hơn bạn tưởng. Ghi lại số quan sát ban đầu, số quan sát còn lại sau làm sạch và lý do loại dòng.

Nếu biến được tính từ các biến quan sát Likert, hãy xử lý biến đảo chiều trước khi tính điểm trung bình. Ví dụ, thang đo từ 1 đến 5 có biến đảo chiều HL3 thì điểm mới có thể được tính bằng 6 - HL3. Không đảo chiều chỉ vì tên biến có chữ R. Bạn cần đối chiếu bảng hỏi và quy ước mã hóa thực tế.

Kiểm tra outlier bằng Analyze > Descriptive Statistics > Explore, xem boxplot và các giá trị cực đoan. Đừng xóa một quan sát chỉ vì nó thuộc nhóm nhỏ. Hãy kiểm tra lỗi nhập liệu trước, sau đó giải trình việc giữ hoặc loại quan sát trong file xử lý dữ liệu.

Phân tích cụm nhạy với cách đo khoảng cách và thang đo. Bạn nên chạy thử với dữ liệu đã kiểm tra, lưu cú pháp hoặc ghi lại các biến sử dụng, phương pháp phân cụm và số cụm. Nếu muốn tìm thêm tài liệu về cách tổ chức phân tích định lượng, bạn có thể bắt đầu từ chủ đề SPSS của DoThesis.

Các bước chạy phân tích cụm trong SPSS

Bước 1: Khám phá số cụm bằng Hierarchical Cluster

Vào Analyze > Classify > Hierarchical Cluster. Đưa các biến định lượng dùng để phân cụm vào ô Variables. Nếu bạn muốn lưu kết quả thành biến nhóm, chưa cần chọn ngay ở bước khám phá.

Trong Statistics, chọn Agglomeration schedule và Proximity matrix nếu cần kiểm tra chi tiết. Trong Plots, chọn Dendrogram. Ở Method, có thể chọn Between-groups linkage và khoảng cách Squared Euclidean cho dữ liệu định lượng, nhưng phải ghi đúng lựa chọn bạn thực sự dùng.

Bấm OK để xem dendrogram và bảng Agglomeration Schedule. Dendrogram không phải lúc nào cũng cho một điểm cắt rõ ràng. Bạn nên xem nhiều khả năng số cụm, chẳng hạn 2, 3 hoặc 4 cụm, rồi đánh giá bằng ý nghĩa thực tế và kết quả K-Means.

Bước 2: Chạy K-Means Cluster

Vào Analyze > Classify > K-Means Cluster. Đưa các biến phân cụm vào Variables. Ở ô Number of Clusters, nhập số cụm bạn chọn sau bước khám phá. Nếu thử 3 cụm, nhập 3 và giữ nguyên số này khi đọc output.

Trong Save, chọn Cluster membership để SPSS tạo biến nhóm cho từng quan sát. Trong Options, giữ Initial cluster centers và chọn ANOVA table nếu phiên bản SPSS của bạn có tùy chọn này. Bảng ANOVA trong K-Means có tính mô tả cho việc so sánh biến giữa các cụm, không nên được diễn giải như một kiểm định độc lập hoàn toàn.

Bấm Iterate, kiểm tra số lần lặp tối đa và tiêu chí hội tụ. Sau đó bấm OK. SPSS thường trả về các bảng Initial Cluster Centers, Final Cluster Centers, Number of Cases in Each Cluster và ANOVA.

Bước 3: Lưu và đặt tên nhóm

Biến nhóm được lưu trong Data View, thường có tên dạng QCL_1 hoặc tên do SPSS tạo. Mở Variable View để thêm nhãn giá trị cho từng nhóm, nhưng chỉ đặt tên như “nhóm giá trị cao” sau khi đã xem điểm trung tâm của nhóm.

Bạn có thể dùng Transform > Recode into Different Variables để tạo biến phân loại có nhãn dễ đọc. Giữ lại biến gốc do SPSS tạo để có thể đối chiếu khi bị hỏi. Không đổi mã 1, 2, 3 tùy ý mà không ghi lại quy ước.

Bước 4: Dùng phân tích biệt số để kiểm tra khả năng phân biệt nhóm

Sau khi có biến nhóm, vào Analyze > Classify > Discriminant. Đưa biến nhóm vào Grouping Variable, bấm Define Range và nhập giá trị nhỏ nhất, lớn nhất. Đưa các biến giải thích vào Independents.

Trong Statistics, chọn Means, Univariate ANOVAs và Box's M nếu cần. Trong Classify, chọn Summary table và Leave-one-out classification để xem tỷ lệ phân loại đúng theo cách phù hợp với dữ liệu. Đây là bước bổ trợ, không thay thế cho việc mô tả và giải thích các cụm.

Đọc kết quả output

Hãy đọc output theo thứ tự: số cụm, quy mô từng cụm, tâm cụm, biến tạo khác biệt và khả năng phân loại. Bảng Number of Cases in Each Cluster cho biết mỗi cụm có bao nhiêu quan sát. Một cụm quá nhỏ cần được xem xét về ý nghĩa thực tế và độ ổn định, thay vì tự động gộp vào cụm khác.

Bảng Final Cluster Centers cho biết giá trị trung tâm của từng biến trong mỗi cụm. Nếu bạn dùng z-score, giá trị dương cho thấy nhóm cao hơn mức trung bình mẫu, còn giá trị âm cho thấy nhóm thấp hơn mức trung bình mẫu. Nếu dùng điểm gốc, hãy diễn giải theo thang đo thực tế.

Bảng ANOVA cho biết biến nào có mức khác biệt lớn hơn giữa các cụm. Cột F và Sig. có thể giúp bạn nhận diện biến phân biệt mạnh, nhưng K-Means không được thiết kế như một thí nghiệm có nhóm được chỉ định từ trước. Vì vậy, hãy trình bày đây là bằng chứng mô tả hỗ trợ việc đặt tên cụm.

Bảng Classification Results trong Discriminant cho biết số quan sát được phân loại đúng hoặc sai. Tỷ lệ phân loại đúng cao không tự động chứng minh các cụm có giá trị lý thuyết. Bạn vẫn cần xem kích thước cụm, độ hợp lý của tâm cụm và khả năng giải thích bằng bối cảnh nghiên cứu.

Bảng số liệu minh họa, không phải kết quả của một nghiên cứu thực tế:

Bảng SPSSChỉ số hoặc dòng minh họaCách đọc
Number of Cases in Each ClusterCluster 1 = 86; Cluster 2 = 104; Cluster 3 = 60Quy mô ba cụm lần lượt là 86, 104 và 60 quan sát
Final Cluster Centers, Chi tiêu2.10; 4.85; 3.20Cụm 2 có mức chi tiêu trung tâm cao nhất
Final Cluster Centers, Hài lòng3.05; 4.42; 2.61Cụm 2 hài lòng cao, cụm 3 thấp hơn
ANOVA, Tần suất muaF = 28.417; Sig. = .000Biến này khác biệt đáng kể về mặt thống kê giữa các cụm trong output minh họa
Classification Results78.4% classified correctlyMô hình biệt số phân loại đúng 78,4% quan sát trong ví dụ

Trong bảng minh họa trên, bạn chưa được gọi Cụm 1 là “khách hàng ít giá trị” nếu chưa xem toàn bộ biến và bối cảnh. Tên nhóm nên phản ánh mẫu hình chung, chẳng hạn “nhóm chi tiêu cao, hài lòng cao”, và cần được giữ nhất quán trong bảng mô tả, biểu đồ và phần thảo luận.

Tiêu chí đánh giá

Không có một ngưỡng duy nhất quyết định phân tích cụm đạt hay không đạt. Bạn cần kết hợp tiêu chí kỹ thuật với tính hợp lý của nhóm. Bảng dưới đây dùng các nguồn trong danh mục cho phép và tách rõ phần có thể áp dụng cho phân tích biệt số.

Nội dung cần kiểm traMốc tham khảoNguồn
Chuẩn hóa biến khi khác đơn vịXem xét chuyển sang z-score để biến có đơn vị lớn không chi phối khoảng cách(Field, 2013)
Cỡ mẫu khi có nhiều biến giải thích trong hồi quy hoặc biệt sốTối thiểu 50 + 8m, với m là số biến dự báo(Tabachnick và Fidell, 2013)
Khoảng cách giữa các nhóm trong phân tích biệt sốKiểm tra sự khác biệt giữa trung bình nhóm và bảng phân loại, không dùng một ngưỡng duy nhất(Field, 2013)
Durbin-Watson khi bạn chạy hồi quy bổ trợTừ 1 đến 3(Field, 2013)
Kiểm tra phân phối và outlierXem Explore, boxplot và thống kê mô tả trước khi phân tích(Tabachnick và Fidell, 2013)
Kiểm định Box's M trong biệt sốDiễn giải cùng các bảng khác, đặc biệt khi giả định hiệp phương sai không đồng nhất(Field, 2013)

Các ngưỡng như Cronbach's Alpha, KMO hoặc factor loading thuộc độ tin cậy và EFA, không phải tiêu chí mặc định để kết luận số cụm. Nếu biến đầu vào là điểm thang đo, bạn có thể kiểm định thang đo trước, nhưng không dùng Alpha để nói rằng ba cụm là “đạt”.

Khi báo cáo phân tích biệt số, hãy kiểm tra nhóm có kích thước quá chênh lệch hay không, bảng Classification Results có được xây dựng trên dữ liệu huấn luyện hay kiểm tra chéo, và tỷ lệ phân loại có vượt quá mức dễ đạt do nhóm lớn hay không. Với SmartPLS, phân tích đa nhóm MGA trong SmartPLS là một quy trình khác. Bạn có thể xem cách chạy FIMIX SmartPLS 4 hoặc FIMIX trong SmartPLS khi nghiên cứu của bạn dùng mô hình PLS-SEM.

Cách viết kết quả vào luận văn

Cách viết vào luận văn: “Phân tích K-Means Cluster được thực hiện với [số biến] biến gồm [tên biến]. Kết quả chia [cỡ mẫu] quan sát thành [số cụm] nhóm, với quy mô lần lượt là [n1], [n2] và [n3]. Dựa trên các giá trị Final Cluster Centers, nhóm 1 được gọi là [tên nhóm] vì có [mẫu hình chính], nhóm 2 được gọi là [tên nhóm] vì [mẫu hình chính]. Phân tích biệt số cho thấy tỷ lệ phân loại đúng là [x%], được sử dụng như bằng chứng bổ trợ cho khả năng phân biệt các nhóm.”

Trong chương 4, đặt bảng tâm cụm trước phần đặt tên nhóm. Sau đó mô tả từng nhóm bằng số quan sát và các biến nổi bật. Nếu có bảng ANOVA, ghi rõ đây là output dùng để so sánh sự khác biệt giữa các cụm. Không viết rằng phân tích cụm chứng minh nhóm này gây ra nhóm kia.

Nếu phân tích biệt số là mục tiêu chính, hãy viết rõ biến nhóm được tạo từ K-Means hay được xác định từ thiết kế nghiên cứu. Hai trường hợp này có ý nghĩa khác nhau. Bạn cũng nên ghi phương pháp khoảng cách, phương pháp liên kết trong Hierarchical Cluster, số cụm cuối cùng và cách xử lý missing values.

Lỗi thường gặp khi chạy phân tích cụm

Lỗi đầu tiên là đưa biến định danh vào phân cụm. Mã giới tính 1 và 2 không có nghĩa khoảng cách giữa hai giá trị này tương đương với khoảng cách giữa hai mức thu nhập. Chỉ đưa biến định lượng hoặc biến đã được mã hóa theo phương pháp phù hợp với mục tiêu phân tích.

Lỗi thứ hai là chọn số cụm chỉ vì dendrogram nhìn đẹp. Hãy so sánh các phương án, xem kích thước cụm, tâm cụm và khả năng giải thích. Nếu ba cụm tạo ra một nhóm chỉ có vài quan sát nhưng không có ý nghĩa thực tế, bạn cần ghi nhận hạn chế thay vì ép kết quả theo kỳ vọng.

Lỗi thứ ba là không chuẩn hóa biến. Một biến có khoảng dao động hàng nghìn đơn vị có thể chi phối khoảng cách so với biến Likert từ 1 đến 5. Chạy lại với z-score và so sánh mẫu hình là cách kiểm tra thực tế hơn việc đoán trước kết quả.

Lỗi thứ tư là đặt tên nhóm theo ý muốn ban đầu. Tên nhóm phải xuất phát từ Final Cluster Centers, số lượng quan sát và bối cảnh đề tài. Nếu tên nhóm thay đổi sau mỗi lần chạy, bạn cần lưu phiên bản dữ liệu và ghi lại lý do.

Lỗi cuối là dùng phân tích đa nhóm MGA trong SmartPLS để thay cho Cluster Analysis trong SPSS. MGA so sánh đường dẫn giữa các nhóm đã có, còn phân tích cụm tạo nhóm dựa trên mức độ tương đồng của các quan sát. Nếu bạn đang kiểm tra moderator hoặc interaction effect trong SmartPLS, hãy đọc thêm về biến điều tiết trong SmartPLS và biến tương tác trong SmartPLS.

Đọc thêm: biến điều tiết, biến điều tiết trong smartpls, biến tương tác trong smartpls, cách chạy fimix smartpls 4, fimix trong smartpls, chủ đề spss.

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

Phân tích cụm trong SPSS có cần biến phụ thuộc không?

Không. Phân tích cụm thường dùng một nhóm biến đặc điểm để tìm các quan sát tương đồng, nên không bắt buộc có biến phụ thuộc như hồi quy. Bạn vẫn có thể dùng biến phụ thuộc sau đó để mô tả hoặc so sánh các cụm, nhưng cần ghi rõ vai trò của biến đó.

Nên chọn Hierarchical Cluster hay K-Means?

Hierarchical Cluster phù hợp để khám phá số cụm và xem dendrogram. K-Means phù hợp khi bạn đã có số cụm dự kiến và muốn phân bổ quan sát vào các nhóm. Với một bài luận văn, quy trình kết hợp hai bước thường dễ giải thích hơn việc chỉ chạy một thủ tục rồi chọn số cụm theo cảm tính.

Phân tích cụm có cần kiểm định Cronbach's Alpha không?

Nếu biến đầu vào là điểm trung bình của một thang đo nhiều biến quan sát, bạn nên kiểm tra độ tin cậy và cách tính điểm trước. Tuy nhiên, Cronbach's Alpha không phải tiêu chí để đánh giá trực tiếp số cụm hoặc tên cụm. Hãy tách phần kiểm định thang đo khỏi phần phân nhóm.

Tại sao SPSS báo một cụm có rất ít quan sát?

Có thể dữ liệu thật sự có một nhóm đặc biệt, hoặc số cụm bạn chọn quá lớn, hoặc outlier đang tạo thành cụm riêng. Kiểm tra tâm cụm, dữ liệu gốc và phương án ít cụm hơn. Không xóa nhóm nhỏ chỉ để bảng kết quả cân đối.

Có thể dùng phân tích biệt số ngay từ đầu không?

Bạn có thể dùng Discriminant Analysis khi nhóm đã được xác định trước và mục tiêu là phân loại hoặc dự đoán nhóm. Nếu nhóm chưa biết và bạn muốn khám phá cấu trúc dữ liệu, hãy bắt đầu bằng Cluster Analysis. Khi dùng hai kỹ thuật liên tiếp, mô tả rõ nhóm nào được tạo trước và nhóm nào được dùng để kiểm tra.

Khi kết quả cụm không ổn định thì làm sao?

Kiểm tra lại biến đầu vào, missing values, outlier và việc chuẩn hóa. Sau đó thử một số cụm hợp lý, lưu kết quả từng lần chạy và xem nhóm có giữ được mẫu hình chính hay không. Nếu kết quả thay đổi mạnh, hãy trình bày đây là hạn chế của dữ liệu thay vì chọn phiên bản có kết quả đẹp nhất.

Mở file .sav của bạn, lập một bảng ghi tên biến, đơn vị đo, missing values và phương án số cụm trước khi chạy lại Hierarchical Cluster. Nếu cần chạy phân tích trên chính dữ liệu SPSS hoặc CSV và lưu toàn bộ bảng output để viết chương 4, bạn có thể dùng M4 phân tích dữ liệu của DoThesis.