① matlab聚類工具箱在哪裡
在matlab環境中首先運行install.m,將工具箱所在路徑添加至matlab就可以找到了。
② MATLAB2014有聚類分析工具箱沒
我的軟體里顯示是沒有的,你可以再查一查。
一般這種工具箱的查詢可在matlab里的幫助界面進行搜索,點擊幫助。打開幫助頁面,左側檢索欄進行檢索需要查詢的語句,然後即可查看右側查詢結果。
或者在主界面,輸入help 空格+你要查詢的內容,進行查詢。下次你可以嘗試一下。
希望對你有所幫助。謝謝。
③ 怎麼用matlab將一組數據聚類成n類,n是根據數據特徵自動得出的最佳聚類數
jd=[1979:1:2008]';
wd=[0.00000072 0.05140592 0.04446843 0.0001155 0.0004182 0 0 0.00005628 0 0 0.03131515 0.00000156 0 0.0427 0.07188356 0 0.0009792 0 0.0047 0 0.1337 0.0365924 0.00901697 0.00560475 0.00355256 0.00050095 0.00017472 0.00006811 0.0001458 0 ]';
jwd=[jd,wd];
Y=pdist(jwd);%,'euclid'
Z=linkage(Y);%,'single'
T=cluster(Z,5);
[H,t]=dendrogram(Z,n);此處的n就為分類數
④ MATLAB中模糊聚類工具箱怎麼找到怎麼用呢
你help fcm,我這有整理過的MATLAB自帶的K均值與模糊C均值程序,我可以發給你,能不能給版點分?
function ff1=jd(g,c)%三維矩陣權g為m*n*c大小的矩陣
g=double(g);
[m,n,v]=size(g);
data=reshape(g,[],size(g,3);
[center,U,obj_fcm]=fcm(double(data),c);
[maxU,index]=max(U,[],1);
ff=reshape(index,m,n);
figure,imshow(ff,[]);
⑤ 如何用matlab聚類工具箱處理自己的數據集
我把K-mediods的matlab代碼貼出來,你好好學習一下 function label = kmedoids( data,k,start_data ) % kmedoids k中心點演算法函數 % data 待聚類的數據集,每一行是一個樣本數據點 % k 聚類個數 % start_data 聚類初始中心值,每一行為一個中心點
⑥ matlab聚類分析工具箱 叫什麼
聚類分析最重要的是什麼?(你啥都不說,怎麼解決你的問題? ) 舉個例子:如果你是淘寶網店老闆,我現在告訴你我想定做個生日禮物,但其它什麼都不告訴你,你能做么? PS:圖我看見了,沒啥用。
⑦ matlab如何調用統計工具箱
調用統計特工具箱的做法:
①打開matlab;
②點擊左下角Start;
③進入Toolbox工具箱;
④選擇Statistics;
⑧ 怎樣用matlab作聚類分析啊求操作T_T T_T
展示如何使用MATLAB進行聚類分析
分別運用分層聚類、K均值聚類以及高斯混合模型來進行分析,然後比較三者的結果
生成隨機二維分布圖形,三個中心
% 使用高斯分布(正態分布)
% 隨機生成3個中心以及標准差
s = rng(5,'v5normal');
mu = round((rand(3,2)-0.5)*19)+1;
sigma = round(rand(3,2)*40)/10+1;
X = [mvnrnd(mu(1,:),sigma(1,:),200); ...
mvnrnd(mu(2,:),sigma(2,:),300); ...
mvnrnd(mu(3,:),sigma(3,:),400)];
% 作圖
P1 = figure;clf;
scatter(X(:,1),X(:,2),10,'ro');
title('研究樣本散點分布圖')
K均值聚類
% 距離用傳統歐式距離,分成兩類
[cidx2,cmeans2,sumd2,D2] = kmeans(X,2,'dist','sqEuclidean');
P2 = figure;clf;
[silh2,h2] = silhouette(X,cidx2,'sqeuclidean');
從輪廓圖上面看,第二類結果比較好,但是第一類有部分數據表現不佳。有相當部分的點落在0.8以下。
分層聚類
eucD = pdist(X,'euclidean');
clustTreeEuc = linkage(eucD,'average');
cophenet(clustTreeEuc,eucD);
P3 = figure;clf;
[h,nodes] = dendrogram(clustTreeEuc,20);
set(gca,'TickDir','out','TickLength',[.002 0],'XTickLabel',[]);
可以選擇dendrogram顯示的結點數目,這里選擇20 。結果顯示可能可以分成三類
重新調用K均值法
改為分成三類
[cidx3,cmeans3,sumd3,D3] = kmeans(X,3,'dist','sqEuclidean');
P4 = figure;clf;
[silh3,h3] = silhouette(X,cidx3,'sqeuclidean');
圖上看,比前面的結果略有改善。
將分類的結果展示出來
P5 = figure;clf
ptsymb = {'bo','ro','go',',mo','c+'};
MarkFace = {[0 0 1],[.8 0 0],[0 .5 0]};
hold on
for i =1:3
clust = find(cidx3 == i);
plot(X(clust,1),X(clust,2),ptsymb{i},'MarkerSize',3,'MarkerFace',MarkFace{i},'MarkerEdgeColor','black');
plot(cmeans3(i,1),cmeans3(i,2),ptsymb{i},'MarkerSize',10,'MarkerFace',MarkFace{i});
end
hold off
運用高斯混合分布模型進行聚類分析
分別用分布圖、熱能圖和概率圖展示結果 等高線
% 等高線
options = statset('Display','off');
gm = gmdistribution.fit(X,3,'Options',options);
P6 = figure;clf
scatter(X(:,1),X(:,2),10,'ro');
hold on
ezcontour(@(x,y) pdf(gm,[x,y]),[-15 15],[-15 10]);
hold off
P7 = figure;clf
scatter(X(:,1),X(:,2),10,'ro');
hold on
ezsurf(@(x,y) pdf(gm,[x,y]),[-15 15],[-15 10]);
hold off
view(33,24)
熱能圖
cluster1 = (cidx3 == 1);
cluster3 = (cidx3 == 2);
% 通過觀察,K均值方法的第二類是gm的第三類
cluster2 = (cidx3 == 3);
% 計算分類概率
P = posterior(gm,X);
P8 = figure;clf
plot3(X(cluster1,1),X(cluster1,2),P(cluster1,1),'r.')
grid on;hold on
plot3(X(cluster2,1),X(cluster2,2),P(cluster2,2),'bo')
plot3(X(cluster3,1),X(cluster3,2),P(cluster3,3),'g*')
legend('第 1 類','第 2 類','第 3 類','Location','NW')
clrmap = jet(80); colormap(clrmap(9:72,:))
ylabel(colorbar,'Component 1 Posterior Probability')
view(-45,20);
% 第三類點部分概率值較低,可能需要其他數據來進行分析。
% 概率圖
P9 = figure;clf
[~,order] = sort(P(:,1));
plot(1:size(X,1),P(order,1),'r-',1:size(X,1),P(order,2),'b-',1:size(X,1),P(order,3),'y-');
legend({'Cluster 1 Score' 'Cluster 2 Score' 'Cluster 3 Score'},'location','NW');
ylabel('Cluster Membership Score');
xlabel('Point Ranking');
通過AIC准則尋找最優的分類數
高斯混合模型法的最大好處是給出分類好壞的標准
AIC = zeros(1,4);
NlogL = AIC;
GM = cell(1,4);
for k = 1:4
GM{k} = gmdistribution.fit(X,k);
AIC(k)= GM{k}.AIC;
NlogL(k) = GM{k}.NlogL;
end
[minAIC,numComponents] = min(AIC);
按AIC准則給出的最優分類數為: 3 對應的AIC值為: 8647.63
後記
(1)pluskid指出K均值演算法的初值對結果很重要,但是在運行時還沒有發現類似的結果。也許Mathworks對該演算法進行過優化。有時間會仔細研究下代碼,將結果放上來。
分享:
56
喜歡
4
贈金筆
閱讀(21209)┊ 評論 (4)┊ 收藏(1) ┊轉載原文 ┊ 喜歡▼ ┊列印┊舉報
前一篇:[轉載]拉普拉斯矩陣
後一篇:[轉載]用matlab做聚類分析