搜索
查看: 2501|回复: 3

[software] 通过识别共表达模式聚类高通量测序数据——clusterSeq包

[复制链接]

7

主题

13

帖子

226

积分

中级会员

Rank: 3Rank: 3

积分
226
QQ
发表于 2017-6-4 14:43:23 | 显示全部楼层 |阅读模式
Clustering of high-throughput sequencing data by identifying co-expression patterns一共有两种聚类的方式对数据进行聚类,k-means聚类和贝叶斯聚类,下面的脚本是基于4个时间点的数据通过识别基因的共表达模式对基因进行聚类,输入文件行名为基因,列名是不同时间点基因的的表达量。
[Python] 纯文本查看 复制代码
source("https://bioconductor.org/biocLite.R")
biocLite("clusterSeq")
library(clusterSeq)
BiocStyle::latex()
# analyses on a set of time series data,identifying gene similar patterns of expression over time
data(ratThymus, package = "clusterSeq")
head(ratThymus)
#define columns label of  the  data matrix.
replicates <- c("2week","2week","2week","2week",
                "6week","6week","6week","6week",
                "21week","21week","21week","21week",
                "104week","104week","104week","104week")
library(baySeq)
libsizes <- getLibsizes(data = ratThymus)
#k-means based clustering, assume an approximately log-normal distribution
ratThymus[ratThymus == 0] <- 1
normRT <- log2(ratThymus %*% diag(1/libsizes) * mean(libsizes))
#For speed purposes, we will consider only the first 1000 genes in the data.
normRT <- normRT[1:1000,]
kClust <- kCluster(normRT, matrixFile = "kclust_matrix.txt.gz", B = 1000)
head(kClust)
mkClust <- makeClusters(kClust, normRT, threshold = 1)
kClustR <- kCluster(normRT, replicates = replicates, matrixFile = "kclust_matrix_newForceReps.txt.gz", B = 1000)
mkClustR <- makeClusters(kClustR, normRT, threshold = 1)
mkClustRC <- makeClustersFF("kclust_matrix_newForceReps.txt.gz", method = "complete", cut.height = 5)
#As an alternative to the K-means based clustering,empirical Bayesian likelihoods
library(baySeq)
cD.ratThymus <- new("countData", data = ratThymus, replicates = c(1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4))
densityFunction(cD.ratThymus) <- nbinomDensity
libsizes(cD.ratThymus) <- getLibsizes(cD.ratThymus)
cD.ratThymus <- allModels(cD.ratThymus)
cl <- makeCluster(4)
cD.ratThymus <- getPriors(cD.ratThymus, consensus = TRUE, cl = cl)
cD.ratThymus <- getLikelihoods(cD.ratThymus, cl = cl)
#data(cD.ratThymus, package = "clusterSeq")
cD.ratThymus <- cD.ratThymus[1:1000,]
aM <- associatePosteriors(cD.ratThymus)
sX <- makeClusters(aM, cD.ratThymus, threshold = 0.5)
#Likelihoods of a pair being clustered together in one clustering given that they are clustered in that way in the other.
wallace(sX, mkClustRC)
par(mfrow = c(2,3))
plotCluster(sX[1:6], cD.ratThymus)


结果图示

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

634

主题

1182

帖子

4030

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
4030
发表于 2017-6-4 15:49:57 | 显示全部楼层
不妨用几句话介绍一下这个数据集,包自带的,或者把这个教程写成rmarkdown的,试试看吧
[AppleScript] 纯文本查看 复制代码
data(ratThymus, package = "clusterSeq")
你这个问题很复杂,需要打赏,请点击 http://www.bio-info-trainee.com/donate 进行打赏,谢谢
回复 支持 反对

使用道具 举报

7

主题

13

帖子

226

积分

中级会员

Rank: 3Rank: 3

积分
226
QQ
 楼主| 发表于 2017-6-4 16:16:00 | 显示全部楼层
Jimmy 发表于 2017-6-4 15:49
不妨用几句话介绍一下这个数据集,包自带的,或者把这个教程写成rmarkdown的,试试看吧
[mw_shl_code=apple ...

用rmakedown写的是不是要邮箱发给你,才能发,我最开始是用rmakedown写,但是在发帖的时候还要自己粘贴过来就没用rmakedown写了。
回复 支持 反对

使用道具 举报

634

主题

1182

帖子

4030

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
4030
发表于 2017-6-4 17:47:37 | 显示全部楼层
hfliu 发表于 2017-6-4 16:16
用rmakedown写的是不是要邮箱发给你,才能发,我最开始是用rmakedown写,但是在发帖的时候还要自己粘贴过 ...

把rmarkdown源码和html发给我邮箱,我会在你的帖子下面放上链接的,我来弄,放心
你这个问题很复杂,需要打赏,请点击 http://www.bio-info-trainee.com/donate 进行打赏,谢谢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|生信技能树 ( 粤ICP备15016384号  

GMT+8, 2019-7-18 09:28 , Processed in 0.029475 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.