拓端tecdat|Python在线零售数据关联规则挖掘Apriori算法数据可视化

原文链接:http://tecdat.cn/?p=23955

原文出处:拓端数据部落公众号

关联规则学习 在机器学习中用于发现变量之间的有趣关系。Apriori算法是一种流行的关联规则挖掘和频繁项集提取算法,在关联规则学习中有应用。它旨在对包含交易的数据库进行操作,例如商店客户的购买(购物篮分析)。除了购物篮分析之外,该算法还可以应用于其他问题。例如,在网络用户导航领域,我们可以搜索诸如访问过网页A和网页B的客户也访问过网页C的规则。

Python sklearn 库没有 Apriori 算法,其中 Python 库 MLxtend 用于市场篮子分析。在这篇文章中,我将分享如何使用Python 获取关联规则和绘制图表,为数据挖掘中的关联规则创建数据可视化 。首先我们需要得到关联规则。

从数组数据中获取关联规则

要获取关联规则,您可以运行以下代码

  1.    
  2.    
  3.    
  4.   import pandas as pd
  5.    
  6.    
  7.    
  8.    
  9.   oary = ott(daset).trafrm(dtset)
  10.    
  11.   df = pd(oh_ry, column=oht.cns)
  12.   print (df)          
  13.    

拓端tecdat|Python在线零售数据关联规则挖掘Apriori算法数据可视化

  1.    
  2.    
  3.   frequent = apror(df, mn_upprt=0.6, useclaes=True)
  4.    
  5.   print (frequent )
  6.    

 拓端tecdat|Python在线零售数据关联规则挖掘Apriori算法数据可视化

数据挖掘中的置信度和支持度

为了选择有趣的规则,我们可以使用最知名的约束,即置信度和支持度的最小阈值 
支持度是指项目集在数据集中出现的频率。
置信度表示规则被发现为真的频率。

  1.   suprt=rules(['suport'])
  2.    
  3.   cofidece=rules(['confience'])

关联规则——散点图

建立散点图的python代码。由于这里有几个点有相同的值,我添加了小的随机值来显示所有的点。

  1.    
  2.    
  3.   for i in range (len(supprt)):
  4.    
  5.      suport[i] = suport[i] + 0.00 * (ranom.radint(,10)- 5)
  6.      confidence[i] = confidence[i] + 0.0025 * (rao.rant(1,10) - 5)
  7.    
  8.    
  9.   plt.show()

以下是支持度和置信度的散点图:

拓端tecdat|Python在线零售数据关联规则挖掘Apriori算法数据可视化

如何为数据挖掘中的关联规则创建数据可视化

为了将关联规则表示为图。这是关联规则示例:(豆,洋葱)==>(鸡蛋)

拓端tecdat|Python在线零售数据关联规则挖掘Apriori算法数据可视化

下面的有向图是为此规则构建的,如下所示。具有 R0 的节点标识一个规则,并且它总是具有传入和传出边。传入边将代表规则前项,箭头在节点旁边。 

下面是一个从实例数据集中提取的所有规则的图形例子。

拓端tecdat|Python在线零售数据关联规则挖掘Apriori算法数据可视化

这是构建关联规则的源代码。

  1.   import networkx as nx 
  2.    
  3.     G1 = nx.iGaph()
  4.    
  5.    
  6.    
  7.     colr_ap=[]
  8.    
  9.     N = 50
  10.    
  11.     colors = np.randm.rndN)   
  12.    
  13.    
  14.    
  15.    
  16.    
  17.     for i in range (rue_o_w):     
  18.    
  19.       G1.a_od_from(["R"+st(i)])
  20.    
  21.    
  22.    
  23.    
  24.    
  25.       for a in rsloc[i]['anedts']:
  26.    
  27.    
  28.    
  29.           G1.dnoesrom([a])
  30.    
  31.    
  32.    
  33.           G1.adedg(a, "R"+str(i))
  34.    
  35.    
  36.    
  37.       for c in ruleioc[i]['']:
  38.    
  39.    
  40.    
  41.               G1.addnodsom()
  42.    
  43.    
  44.    
  45.               G1.adddge"R"str(i), c, colo=[i], weht=2)
  46.    
  47.    
  48.    
  49.     for noe in G1:
  50.    
  51.          fod_astring = alse
  52.    
  53.          for iem in sts:
  54.    
  55.              if nde==itm:
  56.    
  57.                   found_a_ring = True
  58.    
  59.          if fond_sting:
  60.    
  61.               cor_mp.apend('ellw')
  62.    
  63.          else:
  64.               cor_mapapped('green')      
  65.    
  66.    
  67.    
  68.    
  69.     plt.show()

在线零售数据集的数据可视化

为了对可视化进行真实感受和测试,我们可以采用可用的在线零售商店数据集并应用关联规则图的代码。

以下是支持度和置信度的散点图结果。这次使用seaborn库来构建散点图。下面是零售数据集关联规则(前 10 条规则)的可视化。

拓端tecdat|Python在线零售数据关联规则挖掘Apriori算法数据可视化

拓端tecdat|Python在线零售数据关联规则挖掘Apriori算法数据可视化


拓端tecdat|Python在线零售数据关联规则挖掘Apriori算法数据可视化

最受欢迎的见解

1.探析大数据期刊文章研究热点

2.618网购数据盘点-剁手族在关注什么

3.r语言文本挖掘tf-idf主题建模,情感分析n-gram建模研究

4.python主题建模可视化lda和t-sne交互式可视化

5.r语言文本挖掘nasa数据网络分析,tf-idf和主题建模

6.python主题lda建模和t-sne可视化

7.Python中的Apriori关联算法市场购物篮分析

8.通过Python中的Apriori算法进行关联规则挖掘

9.python爬虫进行web抓取lda主题语义数据分析

上一篇:拓端tecdat|数据盘点高校新生录取情况


下一篇:拓端tecdat|R语言拟合扩展的Rasch模型分析试题质量