91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 1KB
    文件類型: .zip
    金幣: 2
    下載: 1 次
    發布日期: 2021-07-23
  • 語言: Matlab
  • 標簽: 多維數據??

資源簡介

提供了k-means多維數據的聚類分析matlab源代碼代碼

資源截圖

代碼片段和文件信息

%N是數據一共分多少類
%data是輸入的不帶分類標號的數據
%u是每一類的中心
%re是返回的帶分類標號的數據
function?[u?re]=KMeans(dataN)???
????[m?n]=size(data);???%m是數據個數,n是數據維數
????ma=zeros(n);????????%每一維最大的數
????mi=zeros(n);????????%每一維最小的數
????u=zeros(Nn);???????%隨機初始化,最終迭代到每一類的中心位置
????for?i=1:n
???????ma(i)=max(data(:i));????%每一維最大的數
???????mi(i)=min(data(:i));????%每一維最小的數
???????for?j=1:N
????????????u(ji)=ma(i)+(mi(i)-ma(i))*rand();??%隨機初始化,不過還是在每一維[min?max]中初始化好些
???????end??????
????end
???
????while?1
????????pre_u=u;????????????%上一次求得的中心位置
????????for?i=1:N
????????????tmp{i}=[];??????%?公式一中的x(i)-uj為公式一實現做準備
????????????for?j=1:m
????????????????tmp{i}=[tmp{i};data(j:)-u(i:)];
????????????end
????????end
????????
????????quan=zeros(mN);
????????for?i=1:m????????%公式一的實現
????????????c=[];
????????????for?j=1:N
????????????????c=[c?norm(tmp{j}(i:))];
????????????end
????????????[junk?index]=min(c);
????????????quan(iindex)=norm(tmp{index}(i:));???????????
????????end
????????
????????for?i=1:N????????????%公式二的實現
???????????for?j=1:n
????????????????u(ij)=sum(quan(:i).*data(:j))/sum(quan(:i));
???????????end???????????
????????end
????????
????????if?norm(pre_u-u)<0.1??%不斷迭代直到位置不再變化
????????????break;
????????end
????end
????
????re=[];
????for?i=1:m
????????tmp=[];
????????for?j=1:N
????????????tmp=[tmp?norm(data(i:)-u(j:))];
????????end
????????[junk?index]=min(tmp);
????????re=[re;data(i:)?index];
????end
????
end

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????1642??2015-11-20?17:20??kmeans.m
?????文件????????1148??2016-01-05?20:30??main.m

評論

共有 條評論