• 大小: 2KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-21
  • 语言: Matlab
  • 标签: matlabPCA  

资源简介

将给定数据进行降维后,利用K-means进行聚类

资源截图

代码片段和文件信息

clc
clear all
fid=fopen(‘data.txt‘‘r‘);
X=fscanf(fid‘%g‘[4 150]);
[m n]=size(X);
X=X‘;
an=fclose(fid);
fprintf(‘标准样本变换法标准化的(std):\n‘)
std=zscore(X)
fprintf(‘计算相关系数矩阵(st):\n‘)
st=corrcoef(std)
fprintf(‘特征向量(vec)及特征值(val):\n‘)
[vecval]=eig(st)
newval=diag(val);
[yi]=sort(newval);      %对特征根进行排序,y为排序结果,i为索引
fprintf(‘特征根排序:\n\n‘)
for z=1:length(y)
    newy(z)=y(length(y)+1-z);
end
fprintf(‘%g\n‘newy)
rate=y/sum(y);%【计算贡献率】
fprintf(‘\n贡献率:\n‘)
newrate=(newy/sum(newy))%
sumrate=0;
newi=[];
for k=length(y):-1:1
    sumrate=sumrate+rate(k);
    newi(length(y)+1-k)=i(k);
    if sumrate>0.85 break; %【85%在这里改动】
    end  
end        
fprintf(‘主成分数:%g\n\n‘length(newi));%【newi里放的是主成分】
fprintf(‘主成分荷载:\n‘)
for p=1:length(newi)
    for q=1:length(y)
        result(

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       4348  2015-12-07 18:12  data.txt

     文件       1326  2015-12-08 22:07  pca.m

----------- ---------  ---------- -----  ----

                 5674                    2


评论

共有 条评论

相关资源