Matlab中如何用离差平方和法聚类
时间: 2023-06-24 08:05:21 浏览: 347
在MATLAB中可以使用`pdist`函数计算样本之间的距离矩阵,然后使用`linkage`函数进行聚类。
以下是一个简单的示例代码:
```matlab
% 生成随机数据
data = rand(50, 3);
% 计算样本之间的距离矩阵,使用“离差平方和”作为距离度量
d = pdist(data, 'sqeuclidean');
% 进行聚类,使用“Ward”方法,并将结果划分为3个簇
Z = linkage(d, 'ward');
c = cluster(Z, 'maxclust', 3);
% 绘制聚类结果
scatter3(data(:,1), data(:,2), data(:,3), 25, c, 'filled');
```
在这个示例中,我们使用了`pdist`函数计算了50个三维随机样本之间的距离矩阵,然后使用`linkage`函数进行聚类,使用了“Ward”方法,并将结果划分为3个簇。最后,我们使用`cluster`函数将每个样本分配到不同的簇,并使用`scatter3`函数将聚类结果可视化。
阅读全文