8

首先,这可能是这个问题的错误论坛,因为它非常适合 R+Bioconductor。这是我所拥有的:

library('GEOquery')
GDS = getGEO('GDS785')
cd4T = GDS2eSet(GDS)
cd4T <- cd4T[!fData(cd4T)$symbol == "",]

现在 cd4T 是一个 ExpressionSet 对象,它包含一个包含 19794 行(probesets)和 15 个列(samples)的大矩阵。最后一行去掉了所有没有相应基因符号的探针集。现在的问题是,这组中的大多数基因都分配给了多个探针组。你可以通过这样做看到这一点

gene_symbols = factor(fData(cd4T)$Gene.symbol)
length(gene_symbols)-length(levels(gene_symbols))
[1] 6897

所以我的 19794 个探针组中只有 6897 个具有独特的探针组 -> 基因图谱。我想以某种方式组合与每个基因相关的每个探针组的表达水平。我不太关心每个探针的实际探针 ID。我非常希望最终得到一个包含合并信息的 ExpressionSet,因为我的所有下游分析都旨在与此类一起使用。

我想我可以编写一些代码来手动执行此操作,并从头开始制作一个新的表达式集。但是,我假设这不是一个新问题,并且存在代码来完成它,使用统计上合理的方法来组合基因表达水平。我猜这也有一个合适的名称,但我的谷歌并没有显示出太多用处。任何人都可以帮忙吗?

4

2 回答 2

2

我不是专家,但根据我多年来所见,每个人都有自己最喜欢的组合探针组的方式。我见过的大规模使用最多的两种方法是只使用在表达式矩阵中具有最大方差的探针集,另一种是取探针集的平均值并从中创建一个元探针集. 对于较小的探针组,我看到人们使用更密集的方法,包括查看每个探针图来了解正在发生的事情……通常情况是一个探针组结果是“好”的一个,而休息不是很好。

我还没有看到通用的代码来做这件事——作为一个例子,我们最近在我的实验室中意识到,我们中的一些人有自己的私有函数来做同样的事情。

于 2010-05-05T20:55:38.527 回答
0

The word you are looking for is 'nsFilter' in R genefilter package. This function assign two major things, it looks for only entrez gene ids, rest of the probesets will be filtered out. When an entrez id has multiple probesets, then the largest value will be retained and the others removed. Now you have unique entrez gene id mapped matrix. Hope this helps.

于 2010-07-29T07:04:26.260 回答