趋势聚类分析-Kmeans

写在前面,Kmeans聚类分析是一种无监督的数据聚类方式

直接上代码!!!

我用的蛋白数据,其实只要输入一个矩阵数据就可以,矩阵数据,行数基因(蛋白),列是样本

library(ClusterGVis)
library(reshape2)
library(argparser)
library(dplyr)
library(tidyverse)

#读分组信息:第一列sample, 第二列是group
groupf <- read.table("group.txt", header = T, sep = '\t',check.names = F)

## Kmeans
##proteo
protein_quant <- read.csv("quant_merge.csv", row.names = 1, header = T, check.names = F, na.strings = c("", "NA"))
protein_info <- protein_quant[, c(groupf$sample)] ##提取样本列

gs <- unique(groupf$group)

# 取组的均值
avg_list <- list() 
for (g in gs) {
  sam = groupf[which(groupf$group==g),1]
  tmp <- protein_info[, sam]
  gtpmavg <- rowMeans(tmp)
  avg_list[[g]] <- gtpmavg
}
avg_info <- do.call(cbind, avg_list)
colnames(avg_info) <- gs

avg_info <- na.omit(avg_info)
avg_info <- as.data.frame(avg_info[, c("C", "D", "M")])

#确定cluster数
pdf('cluster.pdf')
getClusters(obj = avg_info) ## 看这个图逐渐趋于平缓的那个点就是cluster数目
de
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值