输入文件是一个1000X500的0/1矩阵,利用层次聚类后,聚成5类,想要把每个类的行号依次存入一个txt文件中或者不同的5个txt文件。下面是尝试存入一个txt文件中,但是我实现的方法不知道哪里错了,没有成功。希望前辈帮帮忙,Thanks♪(・ω・)ノ
[code]
clear all
close all
clc
G = 1;%文件个数
N = 5;%聚类数
for k = 1:G
filename1 = strcat(['p' num2str(k) '.txt']);
in = importdata(filename1);
D = pdist2(in,in);%求行与行之间欧式距离
C = linkage(D,'average');%开始聚类
HC = cluster(C, N); %划分聚类为N类
out = strcat(['nhc' num2str(k) '.txt']);
fid = fopen(out,'a');
for i = 1:N %把聚类后的每一类的行坐标存入txt中
HCi = find(HC == i);
HCI = HCi';
fprintf(fid,'d% ',HCI);
fprintf(fid,'\n');
end
fclose(fid);
end
[/code]
结果输出了5个d,txt文件像下面一样:
d
d
d
d
d
偶然的你