Skip to content

[Bioc-devel] Deprecation of xy2i and i2xy

3 messages · James W. MacDonald, Henrik Bengtsson

#
Hi,

I just committed changes to both makecdfenv and affy that complete the first step in deprecation of the xy2i and i2xy functions.

In BioC 2.0, all cdf packages will have a second env, named e.g., hgu133plus2dim that will contain two key-value pairs, the keys being 'NROW' and "NCOL'.

The indices2xy() and xy2indices() functions now have an additional argument 'cdf' that is the character name of the cdf package to use to get this information if you don't have an AffyBatch. 

For example:
Loading required package: Biobase
Loading required package: tools

Welcome to Bioconductor

    Vignettes contain introductory material. To view, type
    'openVignette()' or start with 'help(Biobase)'. For details
    on reading vignettes, see the openVignette help page.

Loading required package: affyio
[1] 173067
x   y
[1,] 50 324
[1] 173067
Warning message:
xy2i is deprecated and will be removed in the next BioC release.
Use xy2indices in the affy package instead.
x   y
[1,] 50 324
Warning message:
i2xy is deprecated and will be removed in the next BioC release.
Use indices2xy in the affy package instead.

Note that the agcdf package I used here is one I just built, so this won't work with any of the cdf packages currently in the BioC devel repository. I will be rebuilding the packages Real Soon Now and they will definitely be part of the 2.0 release.

Best,

Jim
#
Hi,

thanks for this.

Just a thought, would it be much work to also add a "chipType" value
to containing the name of the original chip type.  Right now it is not
possible to identify the original chip type given the package (or
"clean" CDF name) - the mapping is in one direction only.  Example:
[1] "mapping250knspcdf"'
[1] "Mapping250K_Nsp"

which would be handy when for instance looking up additional external
annotation data/files given the CDF package etc.

Cheers

Henrik
On 4/12/07, James MacDonald <jmacdon at med.umich.edu> wrote:
#
Hi Henrik,
Henrik Bengtsson wrote:
Theoretically, not difficult. The existing mapping is simple, but 
mapping back is more difficult (e.g., where do you put the underscore? 
What gets capitalized?, etc), so you would really need something like an 
environment to do the mapping, and just keep that up to date by hand.

So it wouldn't be that difficult. However, as I noted yesterday, these 
packages are on their last legs so I don't want to put any more work in 
than necessary.

In addition, the mapping from Affy name to cleancdfname is to make 
programmatic things easier. The reverse mapping would simply be there to 
help the end user figure out what chip they are using. Fortunately, one 
of the things the human brain excels at is pattern matching, so figuring 
out that hgu133plus2 == HG-U133 Plus_2 is easy for someone to do. And 
really, if the end user doesn't know what chip (s)he is using, I don't 
think there is anything we can do to rectify that situation ;-D


Best,

Jim