kmeans聚类算法matlab代码,K-Means算法实现(Matlab)

K-Means算法具体内容可以参考我博客的相关文章,这里只使用Matlab对其进行实现,其他内容不多赘述

K-Means算法

1.生成随机样本点

首先利用 mvnrnd 函数生成3组满足高斯分布的数据,每组数据都是100*2的矩阵,也就相当于生成300个在坐标轴上的样本点

%% 第一组数据

mu1=[0 0]; %均值

S1=[0.1 0 ; 0 0.1]; %协方差

data1=mvnrnd(mu1,S1,100); %产生高斯分布数据

%% 第二组数据

mu2=[-1.25 1.25];

S2=[0.1 0 ; 0 0.1];

data2=mvnrnd(mu2,S2,100);

%% 第三组数据

mu3=[1.25 1.25];

S3=[0.1 0 ; 0 0.1];

data3=mvnrnd(mu3,S3,100);

mu1 、 mu2 、 mu3 是数据的均值,也就是你将每组点画在坐标轴上,其大致的中心位置坐标,例如对于上面的三组数据,中心点就分别为(0,0),(-1.25,1.25),(1.25,1.25),画在图上效果如下图

作图代码如下:

%% 显示数据

plot(data1(:,1),data1(:,

K-Means算法具体内容可以参考我博客的相关文章,这里只使用Matlab对其进行实现,其他内容不多赘述 K-Means算法 1.生成随机样本点 首先利用 mvnrnd 函数生成3组满足高斯分布的数据,每组数据都是100*2的矩阵,也就相当于生成300个在坐标轴上的样本点 %% 第一组数据 mu1=[0 0]; %均值 S1=[0.1 0 ; 0 0.1]; %协方差 data1=mvnrnd(mu1,S1,100); %产生高斯分布数据 %% 第二组数据 mu2=[-1.25 1.25]; S2=[0.1 0 ; 0 0.1]; data2=mvnrnd(mu2,S2,100); %% 第三组数据 mu3=[1.25 1.25]; S3=[0.1 0 ; 0 0.1]; data3=mvnrnd(mu3,S3,100); mu1 、 mu2 、 mu3 是数据的均值,也就是你将每组点画在坐标轴上,其大致的中心位置坐标,例如对于上面的三组数据,中心点就分别为(0,0),(-1.25,1.25),(1.25,1.25),画在图上效果如下图 作图代码如下: %% 显示数据 plot(data1(:,1),data1(:,
经验分享 程序员 微信小程序 职场和发展