Skip to content

as.matrix strangeness

4 messages · Adrian Duffner, Michael Bach, Ista Zahn

#
Dear R users,

I presume there is something foul with system:

a <- c(1,2,3,4)
as.matrix(a, ncol=2)

Output:

     [,1]
[1,]    1
[2,]    2
[3,]    3
[4,]    4

The vignette for as.matrix says nrow (ncol) will be deduced from length
and ncol (nrow).  It does not work even when I additionally specify
nrow=2.  It behaves as if I had not given the ncol argument.  Any hints
on what might be borked up here?

R.Version()$ver
[1] "R version 2.10.1 (2009-12-14)"

Thanks in advance,
Michael Bach
#
Hallo Michael,

check ?matrix and compare to as.matrix.
as.matrix does not provide a ncol argument. To get a 2 by 2 matrix use

matrix(a, ncol=2)

Regards
Adrian

Am 15.04.2011 11:42, schrieb Michael Bach:
#
Hi Adrian,

thanks for the hint.  The problem was that it showed me help for matrix
when I did ?as.matrix.  I thought it was some kind of convention that
data type conversion functions start with "as.", so now I will take more
care in the future.

With matrix() it works as expected, thanks again.

Michael
#
Hi Michael,
It helps to look at the "Usage" section of the help pages. There you
will see that matrix() has an ncol argument, but as.matrix() does not.

Best,
Ista
On Fri, Apr 15, 2011 at 7:08 AM, Michael Bach <phaebz at gmail.com> wrote: