数据挖掘之K-means算法

来源:互联网 发布:独立电影节知乎 编辑:程序博客网 时间:2024/05/29 07:36

记录学习一下!

clear all;

close all;
clc;
%第一类数据
mu1=[0 0 0];
s1=[0.3 0 0;0 0.35 0;0 0 0.3];
data1=mvnrnd(mu1,s1,100);
disp(data1);
%第二类数据
mu2=[1.25 1.25 1.25];
s2=[0.3 0 0;0 0.35 0;0 0 0.3];
data2=mvnrnd(mu2,s2,100);
%第三类数据
mu3=[-1.25 1.25 -1.25];
s3=[0.3 0 0;0 0.35 0;0 0 0.3];
data3=mvnrnd(mu3,s3,100);
plot3(data1(:,1),data1(:,2),data1(:,3),'+');
hold on;
plot3(data2(:,1),data2(:,2),data2(:,3),'r+');
plot3(data3(:,1),data3(:,2),data3(:,3),'g+');
grid on;


data=[data1 data2 data3];
[u re]=kmeans(data,3);
[m n]=size(re);
disp(size(re));
hold on;
for i=1:m
    if re(i,4)==1
        plot3(re(i,1),re(i,2),re(i,3),'ro');
    elseif re(i,4)==2
        plot3(re(i,1),re(i,2),re(i,3),'go');
    else
        plot3(re(i,1),re(i,2),re(i,3),'bo');
    end
end
grid on;
0 0
原创粉丝点击