0

我有一个看起来像的表:

dat = data.frame(expand.grid(x = 1:10, y = 1:10),
             z = sample(LETTERS[1:3], size = 100, replace = TRUE))
tabl <- with(dat, table(z, y))

tabl
   y
z   1 2 3 4 5 6 7 8 9 10
  A 5 3 1 1 3 6 3 7 2  4
  B 4 5 3 6 5 1 3 1 4  4
  C 1 2 6 3 2 3 4 2 4  2

现在我如何将它转换成一个看起来像的 data.frame

    1 2 3 4 5 6 7 8 9 10
  A 5 3 1 1 3 6 3 7 2  4
  B 4 5 3 6 5 1 3 1 4  4
  C 1 2 6 3 2 3 4 2 4  2
4

1 回答 1

2

这里有几个选项。as.data.frame(tabl)不起作用的原因 是它分派给 S3 方法,该方法as.data.frame.table()做了一些有用但与您想要的不同的事情。

as.data.frame.matrix(tabl)
#   1 2 3 4 5 6 7 8 9 10
# A 5 4 3 1 1 3 3 2 6  2
# B 1 4 3 4 5 3 4 4 3  3
# C 4 2 4 5 4 4 3 4 1  5

## This will also work
as.data.frame(unclass(tabl))
于 2012-10-17T23:29:24.010 回答