How to construct an up-to-date and annotation-rich RangeSummarizedExperiment object around old microarray data?
1
1
Entering edit mode
Ramiro Magno ▴ 100
@ramiro-magno-12376
Last seen 2.2 years ago
CBMR, Faro, Portugal

Hi All,

I would like to construct a RangedSummarizedExperiment from an ExpressionSet (eSet) object (microarray data).

I can get an eSet from GEO just fine:

perou2000_gse <- getGEO("GSE61", destdir = inputdatapath, GSEMatrix=TRUE) 
perou2000_eset@annotation # returns "GPL180"

and I can get basic annotation information for the array platform:

gse <- getGEO("GPL180").

(There is no bioc annotation pkg for this platform; I used the code listed in here Common workflow to build an microarray annatation package, like hgu133a.db) to test.)

What I would like to do is to construct a RangedSummarizedExperiment object from the eSet. My goal is to have functional annotation (Gene Symbol, GO term, etc..) but also positional annotation (James W. MacDonald | BiocAnno2016) so that I can do range-based queries.

My question is then how to proceed in order to construct an up-to-date and annotation-rich object around this microarray data?

My tentative approach is to take the genbank accession associated with each probe id (info returned by getGEO("GPL180")) and get the respective sequences. Then, somehow, map them to the most recent version of the human genome and work out the rest of the annotation from the found genome locations? Is this how you would approach this problem?

Many thanks in advance

geoquery summarizedexperiment rangedsummarizedexperiment • 632 views
ADD COMMENT
1
Entering edit mode
@sean-davis-490
Last seen 12 days ago
United States

Unfortunately, there is not a single, simple approach here and the outline I give is without any testing. That said, you could use the UNIGENE ids to map back to ENTREZGENE id's using the org.hs.eg.db package. From the ENTREZ IDs, you can map to transcripts via the appropriate transcriptdb object. There are going to be a lot of unmatched IDs, I suspect, but the approach I sketched out will eliminate any mapping steps and utilizes only Bioconductor annotation resources. 

As an aside, note that fData(perou2000_gse[[1]]) will get you the GPL annotations.

ADD COMMENT
0
Entering edit mode

Thank you for your answer Sean.

Do you see any problem in using this approach:

1. Fetch the EST sequences corresponding to the microarray probe IDs using genbankr pkg?

2. Use gmapR pkg and the human genome BSgenome.Hsapiens.NCBI.GRCh38 to map the sequences.

3. Convert the `GAlignments` objects obtained from `gmapR` to `GRanges` objects and use them to construct the `RangedSummarizedExperiment` object..?

ADD REPLY
1
Entering edit mode

I'd say give it a try.

ADD REPLY

Login before adding your answer.

Traffic: 680 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6