我有150种实验物质。对这些物质分别测量80个特征。我使用PCA来计算其PC,并确定了前三个组件。现在,我想在R软件(www.R-project.org)上应用k-means聚类,在低维数据上进行1000次迭代,以将个体与它们分离各自的人口。R软件中k-均值聚类迭代
任何人都可以看到如何做到这一点?谢谢
我有150种实验物质。对这些物质分别测量80个特征。我使用PCA来计算其PC,并确定了前三个组件。现在,我想在R软件(www.R-project.org)上应用k-means聚类,在低维数据上进行1000次迭代,以将个体与它们分离各自的人口。R软件中k-均值聚类迭代
任何人都可以看到如何做到这一点?谢谢
请参阅adegenet package并尝试DAPC。
请阅读http://bmcgenet.biomedcentral.com/articles/10.1186/1471-2156-11-94我认为它符合你的意愿。它作为DAPC在adegenet R软件包中实施。这个实现是为多基因座基因型数据设计的,但是原理描述得非常好,您可以根据自己的数据修改它或找到类似的东西。
它对PC转换(“清除”)数据执行K均值聚类,这显着加速了整个计算。最后进行判别分析以获得最佳聚类。这是非常有效的方法。
请尝试添加更多解释到这个答案 –
http://www.statmethods.net/advstats/cluster.html提供集群数据的很好和简单的示例。
对于你的问题:
考虑一些随机的正常数据和一些简单的代码,以适应k均值聚类。请注意,3个集群将适合这些数据(纯粹是任意的)。
data = matrix(rnorm(450),ncol=3)
fit = kmeans(data, centers = 3, iter.max = 1000)
cluster.data = data.frame(data, fit$cluster)
已回答您的问题?
欢迎来到SO。请阅读[Stack Overflow问题清单](http://meta.stackexchange.com/questions/156810/stack-overflow-question-checklist)。你能告诉我们[你有什么尝试](http://mattgemmell.com/2008/12/08/what-have-you-tried/)到目前为止? – zero323