pandas 数据框中的值组合 [英] Combination of values in pandas data frame

查看:45
本文介绍了 pandas 数据框中的值组合的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是我的熊猫数据框:

       Item          Support_Count
0      BREAD              4
1      MILK               4
2      DIAPER             4
3      BEER               3

我将如何从第一列项目"中生成2和3组项目的所有可能的唯一组合.

How will i generate all possible unique combinations of 2 and 3 set of items from the 1st column 'Item'.

示例(2件套): (面包,牛奶) ,(面包,尿布),(面包,啤酒),(牛奶,尿布等).

Example(2 item sets): (BREAD,MILK) ,(BREAD,DIAPER),(BREAD,BEER),(MILK,DIAPER) etc.

示例(3个项目集): (面包,牛奶,尿布),(面包,牛奶,啤酒),(牛奶,尿布,啤酒)等

Example (3 item sets): (BREAD,MILK,DIAPER),(BREAD,MILK,BEER),(MILK,DIAPER,BEER) etc.

推荐答案

您可以使用itertools库:

import itertools
list(itertools.combinations(df['Item'], 2))

[('BREAD', 'MILK'),
 ('BREAD', 'DIAPER'),
 ('BREAD', 'BEER'),
 ('MILK', 'DIAPER'),
 ('MILK', 'BEER'),
 ('DIAPER', 'BEER')]

list(itertools.combinations(df['Item'], 3))

[('BREAD', 'MILK', 'DIAPER'),
 ('BREAD', 'MILK', 'BEER'),
 ('BREAD', 'DIAPER', 'BEER'),
 ('MILK', 'DIAPER', 'BEER')]

注意:组合的数量增长非常快,因此生成所有可能的组合可能没有效率.如果您尚未这样做,建议您查看 apriori算法实现.

Note: The number of combinations grows very quickly so generating all possible combinations may not be efficient. I recommend looking at apriori algorithm implementations if you haven't already done so.

这篇关于 pandas 数据框中的值组合的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆