在R中为两个向量的表添加变量名

qrjkbowd  于 11个月前  发布在  其他
关注(0)|答案(2)|浏览(124)

这很奇怪。Overe here有人问了一个基本的问题,如何在R中做一个2x2的表。
答案在某种程度上是好的,但它表整个数据框。在较大的数据框中,这不会工作,你需要指定两个向量交叉表。
这里的问题是,当您将数据框表化时,如下所示,您会得到很好的标题,指示哪个变量在行中,哪个变量在列中。

df <- data.frame(Cat=sample(c('Yes', 'No'), size=10, replace=TRUE),
                 IsYellow=sample(c('Yes', 'No'), size=10, replace=TRUE))
#Compare this
table(df)
#With this
table(df$Cat, df$IsYellow)

字符串
如何在第二个选项中获取变量名?

g6ll5ycj

g6ll5ycj1#

一个选项是用with() Package :

set.seed(123)

df <- data.frame(
  Cat = sample(c("Yes", "No"), size = 10, replace = TRUE),
  IsYellow = sample(c("Yes", "No"), size = 10, replace = TRUE)
)

with(df, table(Cat, IsYellow))
#>      IsYellow
#> Cat   No Yes
#>   No   1   3
#>   Yes  4   2

字符串

k97glaaz

k97glaaz2#

我们可以使用dnn-参数:

df = data.frame(Cat = sample(c('Yes', 'No'), size = 10L, replace = TRUE),
                IsYellow = sample(c('Yes', 'No'), size = 10L, replace = TRUE))

table(df$Cat, df$IsYellow, dnn = colnames(df))
#>      IsYellow
#> Cat   No Yes
#>   No   5   2
#>   Yes  1   2

字符串
创建日期:2023年12月20日,使用reprex v2.0.2

相关问题