Hello. bioconductor behaves strangely when I run R through emacs
using
ESS. I'm using R 2.0.1 with windows XP.
using the R gui I get
> temp=new("phenoData")
> validObject(temp)
[1] TRUE
but in emacs I get
> temp=new("phenoData")
> validObject(temp)
Error in validityMethod(object) : No slot of name "phenoLabels" for
this
object of class "phenoData"
so I'll use the R gui from now on, but I just wanted to point this
out.
Hi Patrick,
are you sure that you are actually using the same versions of R when
you
call Rgui versus ESS? Perhaps your emacs accesses an old version of R
that is still lying around somewhere on your computer.
Bw
Wolfgang
Patrick Brown wrote:
> Hello. bioconductor behaves strangely when I run R through emacs
using
> ESS. I'm using R 2.0.1 with windows XP.
> using the R gui I get
>
> > temp=new("phenoData")
> > validObject(temp)
> [1] TRUE
>
> but in emacs I get
>
> > temp=new("phenoData")
> > validObject(temp)
> Error in validityMethod(object) : No slot of name "phenoLabels" for
this
> object of class "phenoData"
>
> so I'll use the R gui from now on, but I just wanted to point this
out.
-------------------------------------
Wolfgang Huber
European Bioinformatics Institute
European Molecular Biology Laboratory
Cambridge CB10 1SD
England
Phone: +44 1223 494642
Fax: +44 1223 494486
Http: www.ebi.ac.uk/huber
I really think Wolfgang is correct -- that particular command
shouldn't be doing anything to change results within or without of
Emacs.
Please verify versions of the programs (do you have multiple R's on
your laptop?)
best,
-tony
On Wed, 09 Mar 2005 15:10:53 +0000, Wolfgang Huber <huber@ebi.ac.uk>
wrote:
> Hi Patrick,
>
> are you sure that you are actually using the same versions of R when
you
> call Rgui versus ESS? Perhaps your emacs accesses an old version of
R
> that is still lying around somewhere on your computer.
>
> Bw
> Wolfgang
>
>
> Patrick Brown wrote:
> > Hello. bioconductor behaves strangely when I run R through emacs
using
> > ESS. I'm using R 2.0.1 with windows XP.
> > using the R gui I get
> >
> > > temp=new("phenoData")
> > > validObject(temp)
> > [1] TRUE
> >
> > but in emacs I get
> >
> > > temp=new("phenoData")
> > > validObject(temp)
> > Error in validityMethod(object) : No slot of name "phenoLabels"
for this
> > object of class "phenoData"
> >
> > so I'll use the R gui from now on, but I just wanted to point this
out.
>
> -------------------------------------
> Wolfgang Huber
> European Bioinformatics Institute
> European Molecular Biology Laboratory
> Cambridge CB10 1SD
> England
> Phone: +44 1223 494642
> Fax: +44 1223 494486
> Http: www.ebi.ac.uk/huber
>
> _______________________________________________
> Bioconductor mailing list
> Bioconductor@stat.math.ethz.ch
> https://stat.ethz.ch/mailman/listinfo/bioconductor
>
--
best,
-tony
"Commit early,commit often, and commit in a repository from which we
can easily
roll-back your mistakes" (AJR, 4Jan05).
A.J. Rossini
blindglobe@gmail.com
A.J. Rossini wrote:
> I really think Wolfgang is correct -- that particular command
> shouldn't be doing anything to change results within or without of
> Emacs.
>>are you sure that you are actually using the same versions of R when
you
>>call Rgui versus ESS? Perhaps your emacs accesses an old version of
R
>>that is still lying around somewhere on your computer.
Its the same binary, Patrick has it in D:\program
files\R\bin\Rterm.exe - if we run that from the DOS command prompt it
works, when launched from ESS (and I checked the ESS setup, and it
does
run that .exe file) it has the problem.
The problem can be seen by:
library(Biobase)
getClassDef(class(new("phenoData")))@validity
which gives this in ESS:
function (object)
{
dm <- dim(object@pData)
if (dm[2] != length(object@phenoLabels))
return(FALSE)
return(TRUE)
}
<environment: 00a50680="">
- and then object@phenoLabels fails, since these objects dont have
those slots. The validity method from Rterm or Rgui checks the correct
slot.
I suspect there must be an old version of some bioconductor packages
around somewhere, but I dont know why ESS is using them. .libPaths()
is
identical in all environments.
Cant give any more specifics now, since Patrick has gone off to
watch
mountaineer Chris Bonington become our new Chancellor...
Baz
Hi Patrick,
Patrick Brown <p.e.brown@lancaster.ac.uk> writes:
> Hello. bioconductor behaves strangely when I run R through emacs
> using ESS. I'm using R 2.0.1 with windows XP.
That seems odd. Have you verified that ESS is using the same version
of R and the same package library as Rgui? It might be useful to
compare the output of these two functions:
R.Version()
sessionInfo()
+ seth
One way to check what Wolfgang & Tony said is to look at the output
of:
Sys.getenv("R_HOME")
Andy
> From: Patrick Brown
>
> Hello. bioconductor behaves strangely when I run R through
> emacs using
> ESS. I'm using R 2.0.1 with windows XP.
>
> using the R gui I get
>
> > temp=new("phenoData")
> > validObject(temp)
> [1] TRUE
>
> but in emacs I get
>
> > temp=new("phenoData")
> > validObject(temp)
> Error in validityMethod(object) : No slot of name
> "phenoLabels" for this
> object of class "phenoData"
>
> so I'll use the R gui from now on, but I just wanted to point
> this out.
>
> _______________________________________________
> Bioconductor mailing list
> Bioconductor@stat.math.ethz.ch
> https://stat.ethz.ch/mailman/listinfo/bioconductor
>
>
>
problem solved. The ESS R was loading an old version of Biobase,
which
was in the recycle bin. emptied the recycle bin and it works fine.
I'd guessed, rightly, that my version of biobase was out of sync with
the other packages, and for some reason wasn't updating when I updated
everything else. So I deleted it and re-installed. strangely ESS
followed the old one to the recycle bin.
Patrick