资源简介
层次聚类的matlab程序,数据来源为80个平面点坐标。
代码片段和文件信息
function HCA()
%UNtitleD2 Summary of this function goes here
% Detailed explanation goes here
clear;clc
DataSet = load(‘testSet.txt‘);
index_of_cluster = core(DataSet);
plot_points(DataSet index_of_cluster);
%X = DataSet;
%Y = pdist(X‘cityblock‘);
%Z = linkage(Y‘average‘);
%[HT] = dendrogram(Z‘colorthreshold‘‘default‘);
%set(H‘LineWidth‘2)
end
function index_of_cluster = core(DataSet)
DS_size = size(DataSet);
min_distance = +inf;min_index = zeros(12);
index_of_cluster = 1:DS_size(1);
unique_index = unique(index_of_cluster);
size_unique = size(unique_index);
while(size_unique(2)>4)
for i=unique_index
for j=unique_index(unique_index > i)
temp_distance = distance_in_clusters(DataSet(index_of_cluster==i:) DataSet(index_of_cluster==j:)); %error.
if(temp_distance min_distance = temp_distance;
min_index = [ij];
end
end
end
min_distance = +inf;
index_of_cluster(index_of_cluster == min_index(2)) = min_index(1);
unique_index = unique(index_of_cluster);
size_unique = size(unique_index);
end
end
function distance = distance_in_clusters(clusterA clusterB)
% define the distance between two clusters: average-linkage(The mean distance between elements of each cluster).
A_size = size(clusterA);B_size = size(clusterB);
distance_AB = zeros(A_size(1) B_size(1));
for i=1:A_size(1)
for j=1:B_size(1)
distance_AB(ij) = distance_in_points(clusterA(i:) clusterB(j:));
end
end
distance = sum(sum(distance_AB))/(A_size(1)*B_size(1));
end
function dist = distance_in_points(vec1 vec2)
dist = sqrt(sum((vec1-vec2).^2));
end
function plot_points(DataSet index_of_cluster)
unique_index = unique(index_of_cluster);
point_type = ‘mxkxbxrxcxgxyx‘;
j = 1;
for i=unique_index
points = DataSet(index_of_cluster==i:);
plot(points(:1) points(:2)point_type((2*j-1):(2*j)))
j = j+1;
hold on
end
end
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2043 2015-12-15 20:13 Hierarchical clustering\HCA.asv
文件 2035 2015-12-15 20:33 Hierarchical clustering\HCA.m
文件 619 2015-12-15 11:43 Hierarchical clustering\distance_in_clusters.asv
文件 1600 2011-03-15 13:03 Hierarchical clustering\testSet.txt
文件 236278 2015-12-15 20:29 Hierarchical clustering\unti
目录 0 2015-12-15 20:35 Hierarchical clustering\
相关资源
- 二维图像卷积matlab程序
- 关于四元数法捷联惯导解算算法的m
- 车牌字符分割垂直投影切分matlab程序
- LFM及匹配滤波的MATLAB程序
- 手指静脉识别技术 余文波 第九章ma
- C/A产生matlab程序
- INS+GPS组合导航matlab程序
- 卫星轨迹模拟器MATLAB程序
- kalman滤波的语音降噪matlab程序
- matlab程序,求信噪比SNR.m
- 阿伦方差matlab程序
- 非平衡算法ADASYN算法的MATLAB代码
- 遗传算法和聚类算法结合的matlab程序
- 贝叶斯估计方法的matlab程序
- PCM编解码的Matlab程序
- 强迫对流的流道换热系数的Matlab程序
- 研究生 数理统计多元线性回归及显着
- 瑞利衰落信道下采用MRC分集误码性能
- 爬山算法matlab程序
- 局部加权回归的MATLAB实现机器学习之
- 构造均值为a方差为b的高斯白噪声
- 室内定位算法matlab程序
- 模糊综合评价matlab程序
- 牛拉法潮流计算Matlab程序
- 拉曼光谱特征峰提取的蚁群算法的M
- 车载网络共享资源分配matlab程序
- 数据拟合Matlab程序
- 排课问题的遗传算法MATLAB程序
- 线性规划matlab程序.zip
- 惯导六位置法标定解算Matlab程序
评论
共有 条评论