当前位置:   article > 正文

R语言机器学习之聚类算法t-SNE_t-sne r

t-sne r

t-SNE是常见的一种聚类方法,用于数值型变量的降维与聚类可视化。在生物信息、医疗等领域得到广泛应用。其主要思想是将高维分布点的距离,用条件概率来表示相似性。


下面直接上t-SNE聚类的R代码。

#首先安装Rtsne R包

install.packages(“Rtsne”)

library(“Rtsne”)

#导入数据集

data <- read.csv("data",header = T)

cl <- data.frame()

#查看不同困惑度x下的t-SNE聚类效果

for (i in 1:50) {
  set.seed(i)
  tsne_i <- Rtsne(data, dims = 2, perplexity=i, verbose=F, pca = T, max_iter = 500,check_duplicates = F)
  set.seed(i)
 #用K-means进行二次聚类,设定K-means簇的个数为10 

cl_i <- kmeans(tsne_i$Y, centers = 10, nstart = 3,algorithm="Lloyd")  # k = 10 
 

#将聚类结果存为PNG图片格式,大小为800*600

png(file = paste("path",1,"tsne_kmeans.png"),width = 800, height = 600)
  plot(tsne_i$Y, t = "n")

#以数据标签来显示聚类结果,以不同颜色区分簇
  text(tsne_i$Y,labels=row.names(data),font =1, cex = 0.8,col = cl_i$cluster) 
  dev.off()
}  

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/715406
推荐阅读
相关标签
  

闽ICP备14008679号