Chromosome Explorer: data overwrite

1 view
Skip to first unread message

cstratowa

unread,
Apr 22, 2008, 6:51:52 AM4/22/08
to aroma.affymetrix
Dear Henrik

I have just run GLAD for Sty arrays in one xterm and for Xba arrays in
another xterm using ChromosomeExplorer. Now I realized that the
computation finishing last does overwrite the data for
ChromosomExplorer.onLoad.js.

The problem is that the two files:
- ChromosomExplorer.html
- ChromosomExplorer.onLoad.js
are located in directory "reports/Test/ACC,-XY,QN,RMA,A+B,FLN,-XY"

Could you change this and put the two files in the subdirectories for
the corresponding arrays:
"reports/Test/ACC,-XY,QN,RMA,A+B,FLN,-XY/Mapping250K_Sty"
"reports/Test/ACC,-XY,QN,RMA,A+B,FLN,-XY/Mapping50K_Xba240"

This would be great and would solve the problem, probably not only for
me, see the discussion about parallelization.
(However, it does not solve the problem of computing individual arrays
and/or chromosomes in parallel)

It should be possible since I have just manually placed the two files
for Xba in the corresponding Xba subfolder and rerun
ChromosomeExplorer for Sty and placed the results in the Sty
subfolder.

Best regards
Christian

Henrik Bengtsson

unread,
Apr 22, 2008, 8:44:03 AM4/22/08
to aroma-af...@googlegroups.com
sessionInfo()? /H

cstratowa

unread,
Apr 22, 2008, 9:01:21 AM4/22/08
to aroma.affymetrix
Here is the:


> sessionInfo()


R version 2.6.1 (2007-11-26)
x86_64-unknown-linux-gnu

locale:
C


attached base packages:
[1] tcltk tools stats graphics grDevices utils
datasets
[8] methods base


other attached packages:
[1] Cairo_1.4-2 GLAD_1.12.0
aws_1.3-3.1
[4] preprocessCore_1.0.0 sfit_0.1.5
mysnp_0.2.5
[7] Biobase_1.16.1 aroma.affymetrix_0.9.1
aroma.apd_0.1.3
[10] R.huge_0.1.5 digest_0.3.1
aroma.light_1.6.0
[13] affxparser_1.10.1 R.rsp_0.3.3
R.cache_0.1.7
[16] R.utils_1.0.2 R.oo_1.4.3
R.methodsS3_1.0.0


loaded via a namespace (and not attached):
[1] RColorBrewer_1.0-2 rcompgen_0.1-17

Christian
> >  Christian- Hide quoted text -
>
> - Show quoted text -

Henrik Bengtsson

unread,
Apr 29, 2008, 6:28:47 PM4/29/08
to aroma-af...@googlegroups.com
Hi,

ok, now I see your problem - it first looked very similar to a bug
that occurred in v0.9.0, but it is not.

On Tue, Apr 22, 2008 at 12:51 PM, cstratowa

<Christian...@vie.boehringer-ingelheim.com> wrote:
>
> Dear Henrik
>
> I have just run GLAD for Sty arrays in one xterm and for Xba arrays in
> another xterm using ChromosomeExplorer. Now I realized that the
> computation finishing last does overwrite the data for
> ChromosomExplorer.onLoad.js.
>
> The problem is that the two files:
> - ChromosomExplorer.html
> - ChromosomExplorer.onLoad.js
> are located in directory "reports/Test/ACC,-XY,QN,RMA,A+B,FLN,-XY"
>
> Could you change this and put the two files in the subdirectories for
> the corresponding arrays:
> "reports/Test/ACC,-XY,QN,RMA,A+B,FLN,-XY/Mapping250K_Sty"
> "reports/Test/ACC,-XY,QN,RMA,A+B,FLN,-XY/Mapping50K_Xba240"

Try to edit 'ChromosomExplorer.onLoad.js' so you get:

this.setChipTypes(new Array('Mapping250K_Sty', 'Mapping50K_Xba240'));

because that is how it is designed to work. However, for that to
work, your *.png files in the Mapping250K_Sty/glad/ and
Mapping50K_Xba240/glad/ must have the same format.

Of course, one could imaging that ChromosomeExplorer also generate
*.html, *.onLoad.js files in the chip type subdirectories, which could
then please both use cases. I'll put it on the todo list, but I
cannot promise anything soon.

In order to avoid clashes, you can always add an extra tag, e.g.

ce <- ChromosomeExplorer(glad, tags="*,foo")
print(ce)
ChromosomeExplorer:
Name: HapMap
Tags: ACC,-XY,RMA,+300,A+B,FLN,-XY,bar
Number of arrays: 6
Path: reports/HapMap/ACC,-XY,RMA,+300,A+B,FLN,-XY,bar/GenomeWideSNP_6/glad
RAM: 0.00MB

>
> This would be great and would solve the problem, probably not only for
> me, see the discussion about parallelization.
> (However, it does not solve the problem of computing individual arrays
> and/or chromosomes in parallel)
>
> It should be possible since I have just manually placed the two files
> for Xba in the corresponding Xba subfolder and rerun
> ChromosomeExplorer for Sty and placed the results in the Sty
> subfolder.

You must have done something else as well, because otherwise it won't
find the Javascript includes.

/Henrik

>
> Best regards
> Christian
> >
>

cstratowa

unread,
May 7, 2008, 3:36:43 AM5/7/08
to aroma.affymetrix
Dear Henrik

On Apr 30, 12:28 am, "Henrik Bengtsson" <h...@stat.berkeley.edu>
wrote:
> Hi,
>
> ok, now I see your problem - it first looked very similar to a bug
> that occurred in v0.9.0, but it is not.
>
> On Tue, Apr 22, 2008 at 12:51 PM, cstratowa
>
>
>
>
>
> <Christian.Strat...@vie.boehringer-ingelheim.com> wrote:
>
> >  Dear Henrik
>
> >  I have just run GLAD for Sty arrays in one xterm and for Xba arrays in
> >  another xterm using ChromosomeExplorer. Now I realized that the
> >  computation finishing last does overwrite the data for
> >  ChromosomExplorer.onLoad.js.
>
> >  The problem is that the two files:
> >  - ChromosomExplorer.html
> >  - ChromosomExplorer.onLoad.js
> >  are located in directory "reports/Test/ACC,-XY,QN,RMA,A+B,FLN,-XY"
>
> >  Could you change this and put the two files in the subdirectories for
> >  the corresponding arrays:
> >  "reports/Test/ACC,-XY,QN,RMA,A+B,FLN,-XY/Mapping250K_Sty"
> >  "reports/Test/ACC,-XY,QN,RMA,A+B,FLN,-XY/Mapping50K_Xba240"
>
> Try to edit 'ChromosomExplorer.onLoad.js' so you get:
>
>   this.setChipTypes(new Array('Mapping250K_Sty', 'Mapping50K_Xba240'));
>
> because that is how it is designed to work.  However, for that to
> work, your *.png files in the Mapping250K_Sty/glad/ and
> Mapping50K_Xba240/glad/ must have the same format.

Do you mean that the CEL-files must have identical names, so that
this.setSamples(new Array()) can recognize them for both arrays?
(If I could give the CEL-files for Xba and Sty arrays identical
aliases, this should not be a problem.)

>
> Of course, one could imaging that ChromosomeExplorer also generate
> *.html, *.onLoad.js files in the chip type subdirectories, which could
> then please both use cases.  I'll put it on the todo list, but I
> cannot promise anything soon.
>
> In order to avoid clashes, you can always add an extra tag, e.g.
>
> ce <- ChromosomeExplorer(glad, tags="*,foo")
> print(ce)
> ChromosomeExplorer:
> Name: HapMap
> Tags: ACC,-XY,RMA,+300,A+B,FLN,-XY,bar
> Number of arrays: 6
> Path: reports/HapMap/ACC,-XY,RMA,+300,A+B,FLN,-XY,bar/GenomeWideSNP_6/glad
> RAM: 0.00MB
>
Thank you for this hint, I will try it.

>
> >  This would be great and would solve the problem, probably not only for
> >  me, see the discussion about parallelization.
> >  (However, it does not solve the problem of computing individual arrays
> >  and/or chromosomes in parallel)
>
> >  It should be possible since I have just manually placed the two files
> >  for Xba in the corresponding Xba subfolder and rerun
> >  ChromosomeExplorer for Sty and placed the results in the Sty
> >  subfolder.
>
> You must have done something else as well, because otherwise it won't
> find the Javascript includes.
>
You are right, it did not find the Javascript includes.

Best regards
Christian

> /Henrik
>
>
>
>
>
> >  Best regards
> >  Christian- Hide quoted text -
>
> - Show quoted text -- Hide quoted text -

Henrik Bengtsson

unread,
May 8, 2008, 7:18:16 PM5/8/08
to aroma-af...@googlegroups.com
Hi.

Yes, ChromosomeExplorer requires that the generated PNG files have the
same common prefix, i.e. the same 'fullnames' as defined on Page
'Names, tags, and filenames'. Details: These fullnames are what is
returned by getFullNames() of ChromosomeExplorer. That in turn calls
getFullNames.ChromosomalModel() -> getFullNames.ChipEffectSetTuple()
-> getFullNames.AffymetrixCelSetTuple(). The code of latter shows
what is done.

For instance, one of the redundancy tests of aroma.affymetrix uses a
data set with the following six pairs of arrays:

plmData/
HapMap270,100K,CEU,testSet,ACC,-XY,RMA,+300,A+B/
Mapping50K_Hind240/
NA06985,Hind,B5,3005533,chipEffects.CEL
NA06991,Hind,B6,3005533,chipEffects.CEL
NA06993,Hind,B4,4000092,chipEffects.CEL
NA06994,Hind,A7,3005533,chipEffects.CEL
NA07000,Hind,A8,3005533,chipEffects.CEL
NA07019,Hind,A12,4000092,chipEffects.CEL
Mapping50K_Xba240/
NA06985,Xba,B5,4000090,chipEffects.CEL
NA06991,Xba,B6,3005528,chipEffects.CEL
NA06993,Xba,B4,4000090,chipEffects.CEL
NA06994,Xba,A7,3005528,chipEffects.CEL
NA07000,Xba,A8,3005528,chipEffects.CEL
NA07019,Xba,A12,3005528,chipEffects.CEL

Setting up a CbsModel with a 'cesList' of the above two chip-effect
sets, one gets:

> model <- CbsModel(cesList);
> getFullNames(model)
[1] "NA06985,B5" "NA06991,B6" "NA06993,B4"
[3] "NA06994,A7" "NA07000,A8" "NA07019,A12"

Now, set an alias of the first file of the first set, i.e.

> cesList <- getListOfSets(getSetTuple(model));
> ce <- getFile(cesList[[1]], 1);
> getFullName(ce);
[1] "NA06985,Hind,B5,3005533,chipEffects"
> setAlias(ce, "NA06985,Hind,B4,chipEffects");
> getFullName(ce);
[1] "NA06985,Hind,B5,3005533,chipEffects"
> getFullName(ce, aliased=TRUE);
[1] "NA06985,Hind,B4,chipEffects"
> getTags(ce);
[1] "Hind" "B5" "3005533" "chipEffects"
> getTags(ce, aliased=TRUE);
[1] "Hind" "B4" "chipEffects"

From this we learn aliased=TRUE has to be used. The current
implementation of ChromosomalModel etc does not utilize this, i.e
getFullNames(model, aliased=TRUE) does not work, but I've committed
patches so that we now get:

> getFullNames(model, aliased=FALSE)
[1] "NA06985,B5" "NA06991,B6" "NA06993,B4"
[3] "NA06994,A7" "NA07000,A8" "NA07019,A12"

> getFullNames(model, aliased=TRUE)
[1] "NA06985" "NA06991,B6" "NA06993,B4"
[3] "NA06994,A7" "NA07000,A8" "NA07019,A12"

...and

> ce <- ChromosomeExplorer(model);
> getFullNames(ce, aliased=TRUE);
[1] "NA06985" "NA06991,B6" "NA06993,B4"
[3] "NA06994,A7" "NA07000,A8" "NA07019,A12"

I have also updated CopyNumberSegmentationModel (e.g. CbsModel) such
that the outputted PNG files get the same names. With the above
example and the new patches, we now have that::

> process(ce, array=1, chromosome=19)

generates files NA06985,B5,chr19,x0*.png, and

> process(ce, array=1, chromosome=19, aliased=TRUE)

generates files NA06985,chr19,x0*.png (tag 'B5' excluded') and the
ChromosomeExplorer.onLoad.js file contains:

this.setSamples(new Array('NA06985', 'NA06991,B6', 'NA06993,B4',
'NA06994,A7', 'NA07000,A8', 'NA07019,A12'));

With this setup, I think you can alias the chip effect files using
setAlias() so that you can control the tags. [Note that the above
only works to alias the tags; the name parts are currently not
aliased.]

Hope this helps

Henrik

cstratowa

unread,
May 13, 2008, 3:38:09 AM5/13/08
to aroma.affymetrix
Dear Henrik

Thank you for this example on how to use tags, I appreciate your
efforts.
However, as you mention, it works only on tags and not the name parts,
and I would need to have aliases for the name parts. Please note that
CEL-files are usually named by labs doing the experiments, and these
labs have often their on nomenclature, in our case simply a number
Vnnn. Thus, currently I have to rename the symbolic links to the CEL-
files.

Best regards
Christian

Henrik Bengtsson

unread,
May 14, 2008, 11:57:55 AM5/14/08
to aroma-af...@googlegroups.com
Hi.

On Tue, May 13, 2008 at 12:38 AM, cstratowa
<Christian...@vie.boehringer-ingelheim.com> wrote:
>
> Dear Henrik
>
> Thank you for this example on how to use tags, I appreciate your
> efforts.
> However, as you mention, it works only on tags and not the name parts,
> and I would need to have aliases for the name parts. Please note that
> CEL-files are usually named by labs doing the experiments, and these
> labs have often their on nomenclature, in our case simply a number
> Vnnn. Thus, currently I have to rename the symbolic links to the CEL-
> files.

Yes, using symbolic links is a solution, if you're on Unix file systems.

/Henrik

Reply all
Reply to author
Forward
0 new messages