import pandas as pd from mlxtend.preprocessing import TransactionEncoder from mlxtend.frequent_patterns import apriori import matplotlib.pyplot as plt dataset = [['啤酒', '尿布'], ['啤酒', '牛肉', '尿布'], ['啤酒', '尿布', '笔记本电脑'], ['啤酒', '牛肉'], ['啤酒', '花生米']] te = TransactionEncoder() te_ary = te.fit_transform(dataset) df = pd.DataFrame(te_ary, columns=te.columns_) frequent_itemsets = apriori(df, min_support=0.4, use_colnames=True) fig, ax = plt.subplots(figsize=(8, 5)) plt.rcParams['font.sans-serif']=['SimHei'] plt.rcParams['axes.unicode_minus']=False frequent_itemsets.plot(kind='barh', y='support', x='itemsets', ax=ax, color='purple') ax.set_title('Frequent Itemsets') ax.set_xlabel('Support') plt.show()
时间: 2023-06-13 14:08:04 浏览: 95
import pandas as pd.docx
这是一个使用 mlxtend 库实现 Apriori 算法的代码示例,用于发现频繁项集。
代码的前半部分是数据预处理,将数据集转换为适合 Apriori 算法的格式。然后使用 apriori 函数计算频繁项集,并设置最小支持度为 0.4。最后,使用 matplotlib 库绘制频繁项集的柱状图。
需要注意的是,这段代码假设你已经安装了 mlxtend 和 matplotlib 库。如果没有安装,可以使用以下命令安装:
```
pip install mlxtend matplotlib
```
此外,在使用 matplotlib 绘图时,为了避免中文乱码,我们设置了字体为 SimHei,同时关闭了 Unicode 减号。
阅读全文