在MATLAB中,可以使用kmeans
函數(shù)來實(shí)現(xiàn)k均值聚類算法。以下是一個基本的使用示例:
% 生成隨機(jī)數(shù)據(jù)
data = rand(100, 2);
% 設(shè)置聚類的個數(shù)
k = 3;
% 調(diào)用kmeans函數(shù)進(jìn)行聚類
[idx, centers] = kmeans(data, k);
% 將聚類結(jié)果可視化
scatter(data(:, 1), data(:, 2), [], idx, 'filled');
hold on;
scatter(centers(:, 1), centers(:, 2), 100, 'k', 'filled');
在上述示例中,首先生成了一個包含100個隨機(jī)數(shù)據(jù)點(diǎn)的數(shù)據(jù)集,然后通過kmeans
函數(shù)將這些數(shù)據(jù)點(diǎn)劃分成3個簇。kmeans
函數(shù)返回一個包含每個數(shù)據(jù)點(diǎn)所屬簇的索引的向量idx
,以及每個簇的中心點(diǎn)的坐標(biāo)的矩陣centers
。最后,使用scatter
函數(shù)將數(shù)據(jù)點(diǎn)和簇中心可視化出來。
需要注意的是,kmeans
函數(shù)還有其他可選的參數(shù),例如可以指定初始聚類中心的方法、最大迭代次數(shù)等。詳細(xì)的用法和參數(shù)說明可以參考MATLAB的文檔。