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(:,下一篇:
常见软件的几种主要类型