/usr/lib/R/site-library/AnnotationDbi/NOTES-Herve is in r-bioc-annotationdbi 1.40.0-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 | - Fix this problem:
library("org.Mm.eg.db")
x <- org.Mm.egREFSEQ2EG
mapped_seqs <- mappedkeys(x)
y <- x[mapped_seqs]
as.list(y)
It occurs because the SQL statement is too long (the max length supported
by SQLite seems to be 1000000 characters).
For example, this will work:
zz <- as.list(x[mapped_seqs[1:77403]])
but not this
zz <- as.list(x[mapped_seqs[1:77404]])
nchar(toSQLStringSet(mapped_seqs[1:77404])) is 999869!
- fix dbInfo()
- in addition to dbschema(), provide a way to retrieve a high-level
description of a given schema (UML? XML? via some S4 classes?)
- add AnnotationDbi.Rnw vignette (main vignette) with more focus on the
Bimap interface
- fix the current INDEX mess (mix of old and new CREATE INDEX
statements that lead to duplicated indices and an sqlite file
bigger in size), I think all the old CREATE INDEX statements
can be removed (they are the same as the new ones) except in
GO_DB where some useful indices are missing in 0.9
- try adding a "go" (or "go_all") VIEW in the schema that contains
the UNION of the go_[bp|cc|mf] (or go_[bp|cc|mf]_all) tables.
2 things to check carefully: the impact on the size of the SQLite
file and the impact on the speed of the GO, GO2PROBES and
GO2ALLPROBES maps (their definitions would first need to be
modified to make them GoAnnDbBimap instances and have them use
this new view as the right table instead of the 3 original tables).
- look at subListExtract in Biobase and see where it can
be used to improve speed in AnnotationDbi
- pluggable maps
--------------
If [to.tablename(x1),to.colname(x1)] (the right table/colname for a direct
map, the left table/colname for a reverse map) is the same as
[from.tablename(x2)|from.colname(x2)] (the left table/colname for a direct
map, the right/colname table for a reverse map), and if inslot.to.keys(x1)
and inslot.from.keys(x2) are both NAs, then x1 and x2 are "pluggable".
x <- plugmaps(x1, x2), the result of the "plug" operation, is a map that
goes from [from.tablename(x1),from.colname(x1)] to
[to.tablename(x2)|to.colname(x2)].
Of course, only maps that belong to the same package will be pluggable
this way (e.g. hgu95av2PATH2PROBE and hgu95av2ACCNUM, x1 is a reverse
map and x2 a direct map). So, in fact, something else to check before
to decide whether x1 and x2 are pluggable is that dbfile(x1) == dbfile(x2).
|