【问题标题】:gene ranking microarray基因排序微阵列
【发布时间】:2013-02-14 05:41:00
【问题描述】:

我想知道是否有人熟悉用于排序和获取差异表达基因的 Bioconductor RankProduct 包。软件部分信息如下paper, manual, documentation.

我在使用程序时遇到了一些问题,可能是因为我对 R 语言知之甚少。我试图用我自己的数据复制上面 pdf 文件中的步骤。尽管我自己的数据集不像示例中那样在 afffy .cel 文件中,但仅作为制表符分隔文件中的行和列。我有两个条件(1 和 2,每个复制 = 4)

这是我的代码:

library(RankProd)
library(preprocessCore)

#Read expression data
#gdata <- read.table(file="data2.txt", sep="\t", header=T) #9000 rows of genes X 8 columns of chips
gdata <- read.table(file="data2.txt", sep="\t", header=T, row.names=1) #9000 rows of genes X 8 columns of chips

#colnames(gdata)

# This vector contains the microarray sample names
SampleNames= names(data.frame(gdata[,-1]))
#names(datExpr)=gdata[,1]

# This vector contains the gene names
datExpr.gnames= gdata$GeneName

# Since the first column contains the gene names, exclude it.
# dataExp is then the matix required
datExpr=data.frame(gdata[,-1])

#convert data into matrix form
datExpr <- as.matrix(datExpr)

#data normalization - quantile normalization
#datExpr.log.norm <- normalize.quantiles((log2(datExpr)),copy=TRUE) #with logged data
datExpr <- datExpr.log.norm
#datExpr.norm <- normalize.quantiles(datExpr,copy=TRUE) #without logged data
#datExpr <- datExpr.norm


# Identify two class data - control/treatment (or condition 1/condition2)
nl <- 4
n2 <- 4
cl <- rep(c(0,1), c(nl, n2))

datExpr.cl <- cl

# data were generated under identical or very similar conditions except the
# factor of interest (e.g., control and treatment),
origin <- rep(1, nl + n2)

datExpr.origin <- origin

# Data anslysis
datExpr.sub <- datExpr[,which(datExpr.origin == 1)]
datExpr.cl.sub <- datExpr.cl[which(datExpr.origin == 1)]
datExpr.origin.sub <- datExpr.origin[which(datExpr.origin == 1)]

#Rank product analysis and output
#RP.out <- RP(datExpr.sub, datExpr.cl.sub, num.perm = 100, logged = TRUE,na.rm = FALSE,    plot = FALSE, rand = 123)

RP.out <- RPadvance(datExpr.sub, datExpr.cl.sub, datExpr.origin.sub, num.perm = 100,logged = TRUE,
                na.rm = FALSE, gene.names = datExpr.gnames, plot = FALSE,rand = 123)



# Output a table of the identified genes based on user-specified selection criteria
topGene(RP.out, cutoff = 0.05, method = "pfp", logged = TRUE,logbase = 2, gene.names = datExpr.gnames)

我确实运行了代码,但在一种情况下差异表达基因的倍数变化与另一种情况相比是 0 或无穷大。我想知道是否有任何对此程序有经验的人可以帮助我。

【问题讨论】:

    标签: r bioinformatics bioconductor


    【解决方案1】:

    乍一看,我注意到的是

    #datExpr.log.norm <- normalize.quantiles((log2(datExpr)),copy=TRUE) #with logged data
    datExpr <- datExpr.log.norm
    

    这里只要第一行被注释掉 datExpr 就会变成空。

    【讨论】:

    • 感谢 Csgillespie。我决定改用 RankProdIt(交互式程序),这对我的需求很有用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-11-06
    • 2014-06-02
    • 1970-01-01
    • 1970-01-01
    • 2018-04-08
    • 2023-03-04
    • 1970-01-01
    相关资源
    最近更新 更多