利用PCA对鸢尾花数据集进行降维测试

利用PCA对鸢尾花数据集进行降维测试

  • 鸢尾花数据集:总150给样本,每个样本有四个属性,共三类,标签分别为:“setosa”、“versicolor”和“virginica”。
  • 数据集下载:链接: https://pan.baidu.com/s/1Nd65FCDBs75Xt1xUwinOzQ 密码: kspw
clear
%%鸢尾花数据集。
%%
Y = {"Iris-setosa","Iris-versicolor","Iris-virginica"};
fid = fopen('iris.txt');
C=textscan(fid,'%f%f%f%f%s','delimiter',',');
data = [C{1,1},C{1,2},C{1,3},C{1,4}];
label = C{1,5};
%%
%%PCA 从四维降到2维
data = data - mean(data);
D = data.'*data;
[V,lamda] = eig(D);
[L,I] = sort(diag(lamda),'descend');
W = V(:,I(1:2));
Data = data*W;
plot(Data(1:50,1),Data(1:50,2),'r*')
hold on
plot(Data(51:100,1),Data(51:100,2),'g+')
plot(Data(101:150,1),Data(101:150,2),'bo')
legend('Iris-setosa','Iris-versicolor','Iris-virginica')
title('鸢尾花数据集——PCA')

测试结果:
利用PCA对鸢尾花数据集进行降维测试_第1张图片

你可能感兴趣的:(利用PCA对鸢尾花数据集进行降维测试)