我有一个这样的DF:
的数据
df <- tribble(
~pro1,~pro2,~pro3,~pro4,~pro5,~pro6,~pro7,~pro8,~pro9,~count,
0,1,0,1,0,0,0,0,0,137,
1,1,0,0,0,0,0,0,0,109,
0,1,0,0,0,1,0,0,0,104,
0,0,0,1,1,0,0,0,0,79,
1,1,0,1,0,0,0,0,0,57,
0,1,1,0,0,0,0,0,0,57,
0,1,1,0,0,1,0,0,0,54,
0,1,0,0,0,0,1,0,0,45,
0,1,0,0,1,0,0,0,0,30,
1,1,0,1,1,0,0,0,0,28,
1,0,0,1,0,0,0,0,0,25,
0,1,0,1,1,0,0,0,0,23,
0,1,0,1,0,0,1,0,0,19,
0,1,0,1,0,1,0,0,0,18,
0,0,1,0,0,1,0,0,0,18,
1,1,0,0,1,0,0,0,0,17,
0,1,1,1,1,1,1,1,0,15,
0,0,0,1,0,0,1,0,0,15,
0,1,1,1,0,1,0,0,0,14,
0,0,0,0,0,0,1,1,0,14)
字符串
基本上,它是一起购买的产品的汇总。例如,第一行表示有137个案例,其中pro2
和pro4
一起购买。可视化此表的最佳方法是什么?我正在考虑添加一个名为“ID”的新列,并使用值为1的列名的串联。因此,对于第一行,ID应该是"pro2-pro4"
。但是我想不出创建这样的ID的方法。
从本质上讲,我只是想显示哪些产品一起购买,以及每个组合的数量。
2条答案
按热度按时间inn6fuwd1#
对于每个列,可以将值1替换为其列名,将值0替换为NA,然后通过将字符串粘贴在一起将所有生产列合并为一个列。
字符串
rsaldnfx2#
使用
apply
的基本R等价:字符串