如何计算python数据框中组合元素的频率

问题描述

我有以下df:

enter image description here

我要做的是计算单个元素的频率以及组合元素的频率。例如,在整个链接列表中,雨伞出现8次,洗涤剂出现5次,面包出现2次,等等。为此,我使用以下代码:

# empty list
freq = []
for i in data.columns:
    # count freq of each value per column
    m = data[i].value_counts().to_dict()
    
    # append frecuencies from each column in a single list
    freq.append(m)
    
counter = collections.Counter() 
# sum values with the same keys
for f in freq:  
    counter.update(f) 

result = dict(counter)
result

这是输出:

{'umbrella': 8,'detergent': 5,'bread': 2,'cheese': 3,'water': 6,'diaper': 3,'beer': 5,'milk': 2}

现在,下一步是计算组合元素的频率。例如:

  • {啤酒,尿布}在链接列表中出现2次
  • {雨伞,牛奶,啤酒}在链接列表中也出现了2次

我想要做的是修改我的代码以对组合元素进行计数。有谁知道如何做到这一点?我将衷心感谢您的帮助。预先感谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)