R 如何将table函数用于长度为2的输入集合?

R 如何将table函数用于长度为2的输入集合?,r,R,假设我有一些数据集合,其中每个条目的长度为2。例如,复制(10,样本(5,2,replace=T))。我想把它输入到表函数中,这样我就可以看到每对(例如,(3,5))发生的频率。这能做到吗?表(replicate(10,sample(5,2,replace=T))的明显解决方案就好像我给它20个长度为1的输入,而不是10个长度为2的输入一样。如果我们需要成对的计数,转换为数据。frame并使用计数 library(dplyr) t(replicate(10,sample(5,2,replace

假设我有一些数据集合,其中每个条目的长度为2。例如,
复制(10,样本(5,2,replace=T))
。我想把它输入到
函数中,这样我就可以看到每对(例如,(3,5))发生的频率。这能做到吗?
表(replicate(10,sample(5,2,replace=T))
的明显解决方案就好像我给它20个长度为1的输入,而不是10个长度为2的输入一样。

如果我们需要成对的
计数
,转换为
数据。frame
并使用
计数

library(dplyr)
t(replicate(10,sample(5,2,replace = T))) %>% 
    as.data.frame %>% 
    count(V1, V2)

粘贴
元素并应用
表格

table(sapply(replicate(10,sample(5,2,replace = TRUE), 
      simplify = FALSE), paste, collapse = ' '))

或者,如果我们需要
矩阵
中的输出,则在转换为
data.frame
后,应用
。(默认情况下,
replicate
的输出是一个
数组
,因为它默认使用
simplify=TRUE
矩阵
是一个
向量
dim属性)

table(as.data.frame(t(replicate(10,sample(5,2,replace = T)))))