select function not working with annotation package; bug?
1
0
Entering edit mode
Guido Hooiveld ★ 4.1k
@guido-hooiveld-2020
Last seen 6 minutes ago
Wageningen University, Wageningen, the …

I am analyzing some Illumina BeadArrays downloaded from GEO, but when annotating the results I noticed the select function can apparently not access all annotation information. I think this is a bug, but please correct me if this is intentional...

The arrays are Sentrix Mouse-6 v1.1 arrays, and I use the illuminaMousev1p1 package for annotation. Obtaining e.g. the Gene Symbol goes fine, but when I try to access the 'custom mappings' (e.g. PROBEQUALITY) this fails... despite the fact these are listed.. Using the old mget approach does work, however...

 

Thanks,

Guido

 

> library(illuminaMousev1p1.db)

> illuminaMousev1p1()
####Mappings based on RefSeqID####
Quality control information for illuminaMousev1p1:

This package has the following mappings:

illuminaMousev1p1ACCNUM has 32600 mapped keys (of 47522 keys)
illuminaMousev1p1ALIAS2PROBE has 73643 mapped keys (of 144071 keys)
illuminaMousev1p1CHR has 30378 mapped keys (of 47522 keys)
illuminaMousev1p1CHRLENGTHS has 66 mapped keys (of 66 keys)
illuminaMousev1p1CHRLOC has 29904 mapped keys (of 47522 keys)
illuminaMousev1p1CHRLOCEND has 29904 mapped keys (of 47522 keys)
illuminaMousev1p1ENSEMBL has 29390 mapped keys (of 47522 keys)
illuminaMousev1p1ENSEMBL2PROBE has 19477 mapped keys (of 24420 keys)
illuminaMousev1p1ENTREZID has 30380 mapped keys (of 47522 keys)
illuminaMousev1p1ENZYME has 3465 mapped keys (of 47522 keys)
illuminaMousev1p1ENZYME2PROBE has 963 mapped keys (of 971 keys)
illuminaMousev1p1GENENAME has 30380 mapped keys (of 47522 keys)
illuminaMousev1p1GO has 29345 mapped keys (of 47522 keys)
illuminaMousev1p1GO2ALLPROBES has 19813 mapped keys (of 21528 keys)
illuminaMousev1p1GO2PROBE has 15782 mapped keys (of 17154 keys)
illuminaMousev1p1MGI has 30364 mapped keys (of 47522 keys)
illuminaMousev1p1MGI2PROBE has 20223 mapped keys (of 64971 keys)
illuminaMousev1p1PATH has 9494 mapped keys (of 47522 keys)
illuminaMousev1p1PATH2PROBE has 225 mapped keys (of 225 keys)
illuminaMousev1p1PMID has 30224 mapped keys (of 47522 keys)
illuminaMousev1p1PMID2PROBE has 230330 mapped keys (of 263028 keys)
illuminaMousev1p1REFSEQ has 30380 mapped keys (of 47522 keys)
illuminaMousev1p1SYMBOL has 30380 mapped keys (of 47522 keys)
illuminaMousev1p1UNIGENE has 30189 mapped keys (of 47522 keys)
illuminaMousev1p1UNIPROT has 28765 mapped keys (of 47522 keys)

Additional Information about this package:

DB schema: MOUSECHIP_DB
DB schema version: 2.1
Organism: Mus musculus
Date for NCBI data: 2015-Mar17
Date for GO data: 20150314
Date for KEGG data: 2011-Mar15
Date for Golden Path data: 2012-Mar8
Date for Ensembl data: 2015-Mar13
####Custom Mappings based on probe sequence####
illuminaMousev1p1ARRAYADDRESS()
illuminaMousev1p1NUID()
illuminaMousev1p1PROBEQUALITY()
illuminaMousev1p1CODINGZONE()
illuminaMousev1p1PROBESEQUENCE()
illuminaMousev1p1SECONDMATCHES()
illuminaMousev1p1OTHERGENOMICMATCHES()
illuminaMousev1p1REPEATMASK()
illuminaMousev1p1OVERLAPPINGSNP()
illuminaMousev1p1ENTREZREANNOTATED()
illuminaMousev1p1GENOMICLOCATION()
illuminaMousev1p1SYMBOLREANNOTATED()
illuminaMousev1p1REPORTERGROUPNAME()
illuminaMousev1p1REPORTERGROUPID()
illuminaMousev1p1ENSEMBLREANNOTATED()

> ids <- head(keys(illuminaMousev1p1.db))
> ids
[1] "ILMN_1212602" "ILMN_1212603" "ILMN_1212605" "ILMN_1212607" "ILMN_1212608" "ILMN_1212610"

> select(illuminaMousev1p1.db, keys=ids, column=c("SYMBOL"),keytype="PROBEID")
'select()' returned 1:1 mapping between keys and columns
       PROBEID        SYMBOL
1 ILMN_1212602         Best1
2 ILMN_1212603          <NA>
3 ILMN_1212605 1500011K16Rik
4 ILMN_1212607         Cradd
5 ILMN_1212608          <NA>
6 ILMN_1212610          <NA>
>
> #above is working as expected!
>
> select(illuminaMousev1p1.db, keys=ids, column=c("PROBEQUALITY"),keytype="PROBEID")
Error in .testForValidCols(x, cols) :
  Invalid columns: PROBEQUALITY. Please use the columns method to see a listing of valid arguments.
>
> # mmm, strange, not working, but PROBEQUALITY is indeed not an accepted argument....:
> columns(illuminaMousev1p1.db)
 [1] "ACCNUM"       "ALIAS"        "ENSEMBL"      "ENSEMBLPROT"  "ENSEMBLTRANS" "ENTREZID"     "ENZYME"       "EVIDENCE"    
 [9] "EVIDENCEALL"  "GENENAME"     "GO"           "GOALL"        "IPI"          "MGI"          "ONTOLOGY"     "ONTOLOGYALL"
[17] "PATH"         "PFAM"         "PMID"         "PROBEID"      "PROSITE"      "REFSEQ"       "SYMBOL"       "UNIGENE"     
[25] "UNIPROT"     
>

 

> mget(ids, illuminaMousev1p1PROBEQUALITY, ifnotfound=NA)
$ILMN_1212602
[1] "Perfect"

$ILMN_1212603
[1] "Bad"

$ILMN_1212605
[1] "Perfect"

$ILMN_1212607
[1] "Perfect"

$ILMN_1212608
[1] "Perfect***"

$ILMN_1212610
[1] "Perfect***"

>
annotation annotationdata illuminaMousev1p1.db • 1.3k views
ADD COMMENT
1
Entering edit mode
@james-w-macdonald-5106
Last seen 10 hours ago
United States

The problem here is that these annotation packages are modifications of the ChipDb packages defined in AnnotationDbi, but they don't provide any additional functionality to access the extra tables.

In an ideal world these annotation packages would depend on an additional package that extends AnnotationDbi to provide that functionality. But since these are contributed packages, any package to extend AnnotationDbi to accommodate these changes will likely have to come from the contributor or other interested parties.

ADD COMMENT

Login before adding your answer.

Traffic: 694 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