[Rd] Bug is as.matrix.data.frame with nested data.frame
Patrick Perry
pperry at stern.nyu.edu
Fri Dec 1 04:45:21 CET 2017
Converting a data.frame with a nested data.frame to a matrix fails:
x <- structure(list(a = data.frame(letters)),
class = "data.frame",
row.names = .set_row_names(26))
as.matrix(x)
#> Error in ncol(xj) : object 'xj' not found
The offending code is here, in the definition of as.matrix.data.frame
(source/base/all.R):
for (j in pseq) {
if (inherits(X[[j]], "data.frame") && ncol(xj) > 1L)
X[[j]] <- as.matrix(X[[j]])
xj <- X[[j]]
It should be ncol(X[[j]]), not ncol(xj). Also, the code would be more
generic if it used is.data.frame here instead of inherits(, "data.frame").
Patrick
More information about the R-devel
mailing list