[R] as.matrix behaves weird
Charles C. Berry
cberry at tajo.ucsd.edu
Sun Nov 14 19:36:13 CET 2010
On Sun, 14 Nov 2010, Feng Mai wrote:
> ncol is not an argument for as.matrix()
Perhaps this is more than Alexx wanted to know, but ...
Things can get a wee bit tricky when the function is a 'generic'.
'ncol' is not an argument for any method for as.matrix() that is on
your search path.
as.matrix(x,...) is an S3 generic function. try
methods( as.matrix )
and you will see what methods are available for it. And some do have
arguments other than 'x':
> args( as.matrix.data.frame )
function (x, rownames.force = NA, ...)
If you wanted to (but you don't, this is just didactic) you could make a
method that accepts the ncol arg for a particular class
> as.matrix.columned <- function(x,ncol=1) matrix(x,ncol=ncol)
> x <- 1:3
> class(x) <- 'columned'
> as.matrix(x, ncol=3)
[,1] [,2] [,3]
[1,] 1 2 3
> Alexx Hardt <mikrowelle1234 <at> gmx.de> writes:
>> can someone tell me why x is still a 2x1-matrix in the last step?
> R-help at r-project.org mailing list
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
Charles C. Berry Dept of Family/Preventive Medicine
cberry at tajo.ucsd.edu UC San Diego
http://famprevmed.ucsd.edu/faculty/cberry/ La Jolla, San Diego 92093-0901
More information about the R-help