r语言聚类分析
来源:互联网 发布:ubuntu 网卡重启不生效 编辑:程序博客网 时间:2024/05/22 11:36
聚类分析
k-均值聚类:
1、随机选取k个样本作为类中心;
2、计算各样本与各类中心的距离;
3、将各样本归于最近的类中心点;
4、求各类的样本的均值,作为新的类中心;
5、判定:若类中心不再发生变动或达到迭代次数,算法结束,否则回到第2步。
代码:
k-中心点算法与k-均值算法在原理上十分相近,它是针对k-均值算法易受极值影响这一缺点的改进算法。在原理上的差异在于选择各类别中心点时不取样本均值点,而在类别内选取到其余样本距离之和最小的样本为中心。
层次聚类
层次聚类的名称在于,其聚类的过程可以通过类似于系谱图的形式呈现出来。相比k-均值算法与k-中心点算法,系谱算法的突出特点在于,不需要事先设定类别数k,这是因为它每次迭代过程叫仅将距离最近的两个样本/簇聚为一类,其运作过程将自然得到k=n至k=1(n为待分类样本总数)个类别的聚类结果。
k-均值聚类:
1、随机选取k个样本作为类中心;
2、计算各样本与各类中心的距离;
3、将各样本归于最近的类中心点;
4、求各类的样本的均值,作为新的类中心;
5、判定:若类中心不再发生变动或达到迭代次数,算法结束,否则回到第2步。
代码:
x <- 1:100 #生成数据点y <- 50:149plot(x,y)center_1 <- c(x[1],y[1]) #初始化类中心center_2 <- c(x[2],y[2])n <- length(x) #统计样本个数m <- 3dis <- matrix(nrow = n,ncol = m)sqrt((x[1]-center_1[1])^2+(y[1]-center_1[2])^2)sqrt((x[1]-center_2[1])^2+(y[1]-center_2[2])^2)while(TRUE){ for(i in 1:n){ dis[i,1] <- sqrt((x[i]-center_1[1])^2+(y[i]-center_1[2])^2) dis[i,2] <- sqrt((x[i]-center_2[1])^2+(y[i]-center_2[2])^2) } for(i in 1:n){ dis[i,3] <- which.min(dis[i,1:2]) } mean(x[dis[,3]==1]) mean(y[dis[,3]==1]) mean(x[dis[,3]==2]) mean(x[dis[,3]==2]) center_1_new <- c(mean(x[dis[,3]==1]),mean(y[dis[,3]==1])) center_2_new <- c(mean(x[dis[,3]==2]),mean(y[dis[,3]==2])) if(all(center_1==center_1_new) & all(center_2==center_2_new)){ break } center_1 <- center_1_new center_2 <- center_2_new}k-中心点聚类
k-中心点算法与k-均值算法在原理上十分相近,它是针对k-均值算法易受极值影响这一缺点的改进算法。在原理上的差异在于选择各类别中心点时不取样本均值点,而在类别内选取到其余样本距离之和最小的样本为中心。
层次聚类
层次聚类的名称在于,其聚类的过程可以通过类似于系谱图的形式呈现出来。相比k-均值算法与k-中心点算法,系谱算法的突出特点在于,不需要事先设定类别数k,这是因为它每次迭代过程叫仅将距离最近的两个样本/簇聚为一类,其运作过程将自然得到k=n至k=1(n为待分类样本总数)个类别的聚类结果。
阅读全文
0 0
- R语言实现聚类分析
- R语言 聚类分析
- R语言-聚类分析
- R语言 聚类分析
- R语言聚类分析
- R语言实战 聚类分析
- r语言聚类分析
- R语言 : 层次聚类分析
- R语言学习之聚类分析
- R语言-聚类分析相关函数
- R语言实现层次聚类分析
- R语言画聚类分析树形图
- 聚类分析之R语言篇 (Kmeans)
- 多元统计分析及R语言建模-第7章 聚类分析
- 一个用R语言进行聚类分析的例子
- R语言做聚类分析Kmeans时确定类的个数
- java调用r语言 实现聚类分析结果返回
- 【聚类分析】Kmeans算法理解及R语言实现
- POJ 2481__Cows
- 环境配置
- Java编程思想之控制流程
- 倒水问题(Fill,UVa 10603)
- 如何查看mysql的端口号
- r语言聚类分析
- 编程题——复杂链表的复制
- HTML整理3
- 手势
- CSS层叠样式表理解
- CodeForces 820A Mister B and Book Reading
- uva712解题报告
- Headers and client library minor version mismatch.
- UVA 11478 查分约束+二分答案 解题报告