From: Uwe Ligges <ligges_at_statistik.uni-dortmund.de>

Date: Mon 18 Oct 2004 - 21:01:03 EST

*>
*

*>
*

> If you give it a particular mode, it produces a vector:

*>
*

*> R> as.vector(x1mat, mode = "character")
*

*> [1] "1" "1.1" "1+1i" "a" "NA" "NaN"
*

*> R> as.vector(x1mat, mode = "numeric")
*

*> [1] 1.0 1.1 1.0 NA NA NaN
*

*> Warning messages:
*

*> 1: imaginary parts discarded in coercion
*

*> 2: out-of-range values treated as 0 in coercion to raw
*

*>
*

*> A somewhat similar and simpler example is:
*

*>
*

*> R> x <- data.frame(a = 1:5, b = 6:10)
*

*> R> is.vector(as.vector(x))
*

*> [1] FALSE
*

*>
*

*> because data.frames are also already vectors of mode "list". The man
*

*> page of as.vector provides a similar example with:
*

*>
*

*> R> as.vector(x, mode = "numeric")
*

*> Error in as.vector(x, mode = "numeric") : (list) object cannot be
*

*> coerced to double
*

*>
*

*> I had discussed this with Kurt (and maybe R-devel, but I cannot find it
*

*> in the archives) some time ago and the bottom line--if I recall
*

*> correctly--was that is.vector() and as.vector() do not behave in the
*

*> way that is.vector(as.vector(x)) always gives TRUE (or an error).
*

*>
*

*> Z
*

*>
*

*> ______________________________________________
*

*> R-devel@stat.math.ethz.ch mailing list
*

*> https://stat.ethz.ch/mailman/listinfo/r-devel
*

R-devel@stat.math.ethz.ch mailing list

https://stat.ethz.ch/mailman/listinfo/r-devel Received on Mon Oct 18 21:06:14 2004

Date: Mon 18 Oct 2004 - 21:01:03 EST

Achim,

you are right, in principle, but I think I'd rather expect that

as.vector(x1mat, mode = "list")

also removes the dim attributes.

Uwe

Achim Zeileis wrote:

> On Sun, 17 Oct 2004 01:51:47 +0000 (UTC) Gabor Grothendieck wrote:

*>
**>
*

>>The following, which was recently discussions on the rcom-l list, >>is a situation where coercing x1mat to a vector using as.vector >>results in an object that is.vector says is not a vector: >> >> R> x1mat<-matrix(list(1,1.1,1+1i,"a",NA,NaN), 3, 2) >> R> is.vector(as.vector(x1mat)) >> [1] FALSE

> If you give it a particular mode, it produces a vector:

R-devel@stat.math.ethz.ch mailing list

https://stat.ethz.ch/mailman/listinfo/r-devel Received on Mon Oct 18 21:06:14 2004

*
This archive was generated by hypermail 2.1.8
: Fri 18 Mar 2005 - 09:00:37 EST
*