АК
?matrixкак видим, ничего не discarded и не coerced. Баг или фича?
data
an optional data vector (including a list or expression vector). Non-atomic classed R objects are coerced by as.vector and all attributes discarded.
upd
class(as.vector(iris))видать так и задумано
[1] "data.frame"
upd2
все равно только запутали все
> class(matrix(list(iris, iris), 2))
[1] "matrix"
> mode(matrix(list(iris, iris), 2))
[1] "list"
> typeof(matrix(list(iris, iris), 2))
[1] "list"