【发布时间】:2022-11-10 20:25:19
【问题描述】:
我有一个包含两列的大型数据集。
这是它的代表
l1=data.frame(c1=c("A","A","A","B","B","C","D","D"),c2=c("cat","dog","cow","pig","dog","horse","cat","goat"))
我需要创建一个频率矩阵,其中 c1 作为列,c2 作为行,以及每个单元格中 c1 中 c2 的每个值的出现次数。
输出应该是这样的
c1
c2 A B C D
cat 1 0 0 1
cow 1 0 0 0
dog 1 1 0 0
goat 0 0 0 1
horse 0 0 1 0
pig 0 1 0 0
我尝试使用 table() 和 xtabs()。它们适用于这个较小的数据集,但不适用于我实际的非常大的数据集。 由于它是一个非常大的数据集,因此没有 for 循环的解决方案也会有所帮助。 谢谢!
【问题讨论】: