• 拓端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.  
       

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

     

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

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

    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()

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

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

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

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

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

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

    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 条规则)的可视化。


    最受欢迎的见解

    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主题语义数据分析

  • 相关阅读:
    第一次上机作业
    第一次作业
    信号
    进程基础
    计算机网络(第七版)谢希仁编著 第四章课后答案详解
    shell脚本编程
    关于linux安装软件(Ubuntu)时遇见的常见问题处理
    Linux系统C语言开发环境学习
    LINUX下安装中文输入法
    处理《无法获得锁 /var/lib/dpkg/lock
  • 原文地址:https://www.cnblogs.com/tecdat/p/15416484.html
Copyright © 2020-2023  润新知