"Michaela G?ndel" <michaela.guendel at="" googlemail.com=""> writes:
> Dear list,
>
> creating a microarray workflow for my Master Thesis, I am facing a
> problem concerning the RMAGEML package.
>
> I am constructing the workflow from Java using the BioC packages. I
set
> up an Rengine in Java and from this, I call R commands using
> Rengine.eval(). The problem I am facing now is that I want to read
in
> MIAME compliant data with the RMAGEML package, which, from R
directly,
> works perfectly. However, the problem is that the package creates a
JVM
> which of course does not work calling it from an already existing
JVM.
>
> Is there any way of
> - either using the existing JVM in the importMAGEOM function (there:
> mageOM <- .Call("newRMAGESTK", directory, ..rmagemlJVM at jvmptr,
PACKAGE =
> "RMAGEML") )
Definitely getting your hands dirty, but the key seems to be in
.createJVM and the line
jvmptr <- .Call("arji_createJVM", classpath, PACKAGE = "RMAGEML")
The corresponding C code invokes the jvm with appropriate class path
and other options
res = JNI_CreateJavaVM( &jvm, (void**)&env, &vm_args);
and then makes it into an R external pointer and returns it
retptr = R_MakeExternalPtr( jvm, JavaVM_type_tag, R_NilValue );
return(retptr);
Seems like you'd like to replace this with your own C level function
that discovers the JVM
res = JNI_GetCreatedJavaVMs(&jvm, 1, &l);
(this is from the source for the rJava package,
rJava/jri/src/Rcallbacks.c). Return this as an external pointer
retptr = R_MakeExternalPtr( jvm, JavaVM_type_tag, R_NilValue );
return(retptr);
and then patch .createJVM or importMAGEOM to use your new C call.
Of course I haven't tried this ;)
Martin
> - or reading the MAGEML document using MAGE-STK and converting the
input
> from the then Java object to an R object that I can read into R (I
am
> working with RGLists mainly)?
>
> Your help is very much appreciated!
>
> I am using:
>> sessionInfo()
> R version 2.5.0 (2007-04-23)
> i686-pc-linux-gnu
>
> locale:
> LC_CTYPE=en_US.UTF-8;LC_NUMERIC=C;LC_TIME=en_US.UTF-8;LC_COLLATE=en_
US.UTF-8;LC_MONETARY=en_US.UTF-8;LC_MESSAGES=en_US.UTF-8;LC_PAPER=en_U
S.UTF-8;LC_NAME=C;LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=en_US.UTF
-8;LC_IDENTIFICATION=C
>
> attached base packages:
> [1] "tcltk" "splines" "tools" "stats" "graphics" "grDevices"
> [7] "utils" "datasets" "methods" "base"
>
> other attached packages:
> convert RMAGEML marray tkWidgets DynDoc widgetTools
> "1.10.0" "2.10.0" "1.14.0" "1.14.0" "1.14.0" "1.12.0"
> genefilter survival limma goCluster Biobase
> "1.14.1" "2.31" "2.10.5" "1.4.0" "1.14.0"
>
> Thanks a lot in advance,
>
> Michaela
>
> --
> Michaela Guendel
>
> Fraunhofer Institute for Algorithms and Scientific Computing (SCAI)
> Department of Bioinformatics
> Schloss Birlinghoven
> D-53754 Sankt Augustin, Germany
>
> [[alternative HTML version deleted]]
>
> _______________________________________________
> Bioconductor mailing list
> Bioconductor at stat.math.ethz.ch
> https://stat.ethz.ch/mailman/listinfo/bioconductor
> Search the archives:
http://news.gmane.org/gmane.science.biology.informatics.conductor
--
Martin Morgan
Bioconductor / Computational Biology
http://bioconductor.org
Dear Michaela,
this does not directly answer your question... but rather than
flagellating yourself with MAGE-ML you might want to have a look at
the
recent proposal from MGED for a simpler data format:
A simple spreadsheet-based, MIAME-supportive format for microarray
data:
MAGE-TAB.
Rayner TF, Rocca-Serra P, Spellman PT, Causton HC, Farne A, Holloway
E,
Irizarry RA, Liu J, Maier DS, Miller M, Petersen K, Quackenbush J,
Sherlock G, Stoeckert CJ, White J, Whetzel PL, Wymore F, Parkinson H,
Sarkans U, Ball CA, Brazma A.
BMC Bioinformatics. 2006 Nov 6;7:489.
http://www.biomedcentral.com/1471-2105/7/489
Best wishes
Wolfgang
------------------------------------------------------------------
Wolfgang Huber EBI/EMBL Cambridge UK http://www.ebi.ac.uk/huber
Michaela G?ndel ha scritto:
> Dear list,
>
> creating a microarray workflow for my Master Thesis, I am facing a
> problem concerning the RMAGEML package.
>
> I am constructing the workflow from Java using the BioC packages. I
set
> up an Rengine in Java and from this, I call R commands using
> Rengine.eval(). The problem I am facing now is that I want to read
in
> MIAME compliant data with the RMAGEML package, which, from R
directly,
> works perfectly. However, the problem is that the package creates a
JVM
> which of course does not work calling it from an already existing
JVM.
>
> Is there any way of
> - either using the existing JVM in the importMAGEOM function (there:
> mageOM <- .Call("newRMAGESTK", directory, ..rmagemlJVM at jvmptr,
PACKAGE =
> "RMAGEML") )
> - or reading the MAGEML document using MAGE-STK and converting the
input
> from the then Java object to an R object that I can read into R (I
am
> working with RGLists mainly)?
>
> Your help is very much appreciated!
>
> I am using:
>> sessionInfo()
> R version 2.5.0 (2007-04-23)
> i686-pc-linux-gnu
>
> locale:
> LC_CTYPE=en_US.UTF-8;LC_NUMERIC=C;LC_TIME=en_US.UTF-8;LC_COLLATE=en_
US.UTF-8;LC_MONETARY=en_US.UTF-8;LC_MESSAGES=en_US.UTF-8;LC_PAPER=en_U
S.UTF-8;LC_NAME=C;LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=en_US.UTF
-8;LC_IDENTIFICATION=C
>
> attached base packages:
> [1] "tcltk" "splines" "tools" "stats" "graphics" "grDevices"
> [7] "utils" "datasets" "methods" "base"
>
> other attached packages:
> convert RMAGEML marray tkWidgets DynDoc widgetTools
> "1.10.0" "2.10.0" "1.14.0" "1.14.0" "1.14.0" "1.12.0"
> genefilter survival limma goCluster Biobase
> "1.14.1" "2.31" "2.10.5" "1.4.0" "1.14.0"
>
> Thanks a lot in advance,
>
> Michaela
>
Dear Michaela,
see below what Tim Rayner writes. Maybe they can soon provide some
beta-test files?
Michaela, if you are going to produce a package that imports MAGE-TAB
into eSets/ExpressionSets, please consider contributing it to
Bioconductor and/or staying in touch with us, in order to avoid
unnecessary duplication.
Bw Wolfgang
-------- Messaggio Originale --------
Oggetto: Re: [Fwd: Re: [BioC] RMAGEML and JVM]
Data: Tue, 10 Jul 2007 10:11:33 +0100 (BST)
Da: Tim Rayner <rayner at="" ebi.ac.uk="">
Hi Wolfgang,
The MAGE-TAB format is now supported as a submission format to
ArrayExpress, and we're putting the finishing touches to the MAGE-TAB
export from our database, so that all the experiments in AE will soon
be
available in the new format on our FTP site. We've released a parser
and
validator for MAGE-TAB, written in Perl, as part of the Tab2MAGE
project
on SourceForge: http://tab2mage.sf.net/ . I believe that there is an
effort underway to provide MAGE-TAB support for Bioconductor, but I
must
admit I don't know the status of that. I think it may be dependent on
the developers having a set of test documents to work with, which
we've
been thinking would come from the aforementioned database export. I'm
CCing Helen (currently attending a meeting in DC) in case she knows
more
about the Bioconductor development work.
Cheers,
Tim
Hi Michaela --
Maybe we can take this off-list, and resume on BioC-devel when we have
a working and not too ugly solution? I'll forward some more help
to your email address.
Martin
"Michaela G?ndel" <michaela.guendel at="" googlemail.com=""> writes:
> Dear Martin,
> I have patched .createJVM creating a new method?"arji_takeSameJVM"
and there inserting your code line
> res = JNI_GetCreatedJavaVMs(&jvm, 1, &l);
> During the compilation I get the following error messages:
> rmageml.c: In function ?arji_takeSameJVM?:
> rmageml.c:92: error: ?l? undeclared (first use in this function)
> rmageml.c:92: error: (Each undeclared identifier is reported only
once
> rmageml.c:92: error: for each function it appears in.)
> rmageml.c: In function ?updateMAGEML?:
> rmageml.c:626: warning: cast from pointer to integer of different
size
> As I am unfortunately not familiar with C, can you please let me
know how to declare the variable "l" ? I guess, the rest of the error
messages is just a consequence of this
> missing declaration as I haven't changed anything else in the class.
> Thanks a lot in advance,
> best wishes
> Michaela
>
>
> 2007/7/10, Martin Morgan <mtmorgan at="" fhcrc.org="">:
>
> "Michaela G?ndel" <michaela.guendel at="" googlemail.com="">
writes:
> > Dear list, > > creating a microarray workflow for my Master
Thesis, I am facing a > problem concerning the RMAGEML package. > > I
am constructing the workflow from
> Java using the BioC packages. I set > up an Rengine in Java and
from this, I call R commands using > Rengine.eval (). The problem I am
facing now is that I want to
> read in > MIAME compliant data with the RMAGEML package, which,
from R directly, > works perfectly. However, the problem is that the
package creates a JVM > which of
> course does not work calling it from an already existing JVM.
> > Is there any way of > - either using the existing JVM in the
importMAGEOM function (there: > mageOM
> <- .Call("newRMAGESTK", directory, ..rmagemlJVM at jvmptr,
PACKAGE = > "RMAGEML") )
> Definitely getting your hands dirty, but the key seems to be in
.createJVM and the line
> ????jvmptr <- .Call("arji_createJVM", classpath, PACKAGE =
"RMAGEML")
> The corresponding C code invokes the jvm with appropriate class
path and other options
> ????????res = JNI_CreateJavaVM( &jvm, (void**)&env, &vm_args);
> and then makes it into an R external pointer and returns it
> ????retptr = R_MakeExternalPtr( jvm, JavaVM_type_tag,
R_NilValue ); ????????return(retptr);
> Seems like you'd like to replace this with your own C level
function that discovers the JVM
> ???? res = JNI_GetCreatedJavaVMs(&jvm, 1, &l);
> (this is from the source for the rJava package,
rJava/jri/src/Rcallbacks.c). Return this as an external pointer
> ????retptr = R_MakeExternalPtr( jvm, JavaVM_type_tag,
R_NilValue ); ????????return(retptr);
> and then patch .createJVM or importMAGEOM to use your new C
call.
> Of course I haven't tried this ;)
> Martin
> > - or reading the MAGEML document using MAGE-STK and
converting the input > from the then Java object to an R object that I
can read into R (I am > working with
> RGLists mainly)? > > Your help is very much appreciated! > >
I am using: >> sessionInfo() > R version 2.5.0 (2007-04-23) > i686-pc-
linux-gnu > > locale: >
> LC_CTYPE=en_US.UTF-8;LC_NUMERIC=C;LC_TIME=en_US.UTF-8;LC_COLLAT
E=en_US.UTF-8;LC_MONETARY=en_US.UTF-8;LC_MESSAGES=en_US.UTF-8;LC_PAPER
=en_US.UTF-8;LC_NAME=C;LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=en_U
S.UTF-8;LC_IDENTIFICATION=C
> > > attached base packages: > [1] "tcltk" "splines" "tools"
"stats" "graphics" "grDevices" > [7] "utils" "datasets" "methods"
"base" > > other attached packages: >
> convert RMAGEML marray tkWidgets DynDoc widgetTools > "1.10.0"
"2.10.0" "1.14.0" "1.14.0" "1.14.0" "1.12.0" > genefilter survival
limma goCluster Biobase > "1.14.1"
> "2.31" "2.10.5" "1.4.0" "1.14.0" > > Thanks a lot in advance, >
> Michaela > > -- > Michaela Guendel > > Fraunhofer Institute for
Algorithms and Scientific Computing
> (SCAI) > Department of Bioinformatics > Schloss Birlinghoven >
D-53754 Sankt Augustin, Germany > >?????? [[alternative HTML version
deleted]] > >
> _______________________________________________ > Bioconductor
mailing list > Bioconductor at stat.math.ethz.ch >
https://stat.ethz.ch/mailman/listinfo/bioconductor >
> Search the archives:
http://news.gmane.org/gmane.science.biology.informatics.conductor
> -- Martin Morgan Bioconductor / Computational Biology
http://bioconductor.org
>
>
>
--
Martin Morgan
Bioconductor / Computational Biology
http://bioconductor.org