应用于 Illumina 表达微阵列数据的 SPIA 包 (R)

SPIA package (R) applied to Illumina expression microarray data

我一直在尝试使用 GSEA 的替代注释来表达 (mRNA) 数据。 SPIA(信号通路整合分析)看起来很有趣,但它似乎对所有内容都有一条错误消息:

Error in spia(de = sigGenes, all = allGenes, organism = "hsa", plots = TRUE,  :  
de must be a vector of log2 fold changes. The names of de should >be     
included in the reference array!

输入需要一个 log2 倍变化的向量(我的向量命名为 sigGenes),以 Entrez ID 作为关联名称,以及包含在微阵列(allGenes)中的 Entrez ID 的整数向量:

head(sigGenes)
6144 115286  23530  10776  83933   6232 
0.368  0.301  0.106  0.234 -0.214  0.591 
head(allGenes)
6144 115286  23530  10776  83933   6232

我已经删除了其 EntrezID 注释为 NA 的值。 我还使用我在下面列出的站点中提供的示例,将我的数据从 Illumina 微阵列子集化为仅在 Affymetrix 阵列中找到的那些基因。我仍然遇到同样的错误。

这里是完整的 R 代码:

library(Biobase)
library(limma)
library(SPIA)

sigGenes <- subset(full_table, P.Value<0.01)$logFC
names(sigGenes) <- subset(full_table, P.Value<0.01)$EntrezID
sigGenes<-sigGenes[!is.na(names(sigGenes))] # remove NAs

allGenes <- unique(full_table$EntrezID[!is.na(full_table$EntrezID)])

spiaOut <- spia(de=sigGenes, all=allGenes, organism="hsa", plots=TRUE, data.dir="./")

还有什么我可以尝试的想法吗? 如果偏离主题,我们深表歉意(这里还是新的)。如果需要,很高兴将问题移到别处。

此处将 SPIA 应用于 Affymetrix 平台数据的示例:http://www.gettinggeneticsdone.com/2012/03/pathway-analysis-for-high-throughput.html)

根据我们的讨论,我建议删除 sigGenes 中的重复条目。在没有其他信息的情况下,很难说出重复项可能来自何处,以及删除哪一个。

删除重复项确实有帮助。 作为一种解决方法,我选择了每组重复项中的中值(仅因为值接近),如下所示:

dups<-unique(names(sigGenes[which(duplicated(names(sigGenes)))])) # determine which are duplicates
dupID<-names(sigGenes) %in% dups # determine the laocation of all duplicates
sigGenes_dup<-vector(); j=0; # determine the median value for each duplicate
for (i in dups){j=j+1; sigGenes_dup[j]<- median(sigGenes[names(sigGenes)==i])  }
names(sigGenes_dup)<-dups
sigGenes<-sigGenes[!(names(sigGenes) %in% dups)] # remove duplicates from sigGenes
sigGenes<-c(sigGenes,sigGenes_dup) # append the median values of the duplicates

或者只删除重复的作品:

dups<-unique(names(sigGenes[which(duplicated(names(sigGenes)))]))
sigGenes<-sigGenes[!(names(sigGenes) %in% dups)] # remove duplicates from sigGenes