例如,我有一个表tb
tb <- table(mtcars[c("carb","cyl")])
> tb
cyl
carb 4 6 8
1 5 2 0
2 6 0 4
3 0 0 3
4 0 4 6
6 0 1 0
8 0 0 1
其中
> class(tb)
[1] "table"
我想知道是否有更直接的方法将tb
从table
转换为matrix
,即
mtb <- as.matrix(as.data.frame.matrix(tb))
这样
> mtb
4 6 8
1 5 2 0
2 6 0 4
3 0 0 3
4 0 4 6
6 0 1 0
8 0 0 1
和
> class(mtb)
[1] "matrix"
这就是我所做的转换,但是由于同时使用as.matrix()
和as.data.frame.matrix()
,因此我认为这并不简单。
提前感谢!
答案 0 :(得分:5)
您可以这样做:
unclass(table(mtcars[c("carb","cyl")]))
检查班级:
class(unclass(table(mtcars[c("carb","cyl")])))
[1] "matrix"
答案 1 :(得分:0)
尝试一下:
m = matrix(data = tb,nrow = nrow(tb),ncol = ncol(tb),byrow = FALSE,dimnames = list(c(1,2,3,4,6,8),c(4,6,8)))