在MATLAB中進行聚類分析通常使用自帶的kmeans
函數。以下是一個簡單的示例代碼:
% 生成一些示例數據
data = rand(100, 2);
% 設置聚類的數量
k = 3;
% 進行k-means聚類分析
[idx, C] = kmeans(data, k);
% 將每個數據點歸類到對應的簇
cluster1 = data(idx == 1, :);
cluster2 = data(idx == 2, :);
cluster3 = data(idx == 3, :);
% 繪制聚類結果
scatter(cluster1(:,1), cluster1(:,2), 'r');
hold on
scatter(cluster2(:,1), cluster2(:,2), 'g');
scatter(cluster3(:,1), cluster3(:,2), 'b');
scatter(C(:,1), C(:,2), 100, 'k', 'filled');
hold off
在這個示例中,我們生成了一個包含100個數據點的隨機數據集,并將其分成3個簇。然后使用kmeans
函數進行聚類分析,得到每個數據點的類別索引idx
和每個簇的中心點C
。最后,我們將每個數據點根據其類別繪制出來,并在圖中標記出每個簇的中心點。