一. 项目需求

  • 根据用户购买的商品,对购买数据做关联分析
  • 获得用户的商品频繁模式,比如哪些商品经常被一起购买
  • 根据用户的频繁模式,可以做相应的打包销售或产品组合销售

二. 项目数据

  • 数据特征:交易ID(order_id)和商品名称(product_name)
  • 数据格式:事务性数据
  • 唯一性:每次交易只有一个唯一ID,但是有一个订单ID对应多个商品名称的情况

三.  分析方法

  • 关联模式的挖掘,两种方式:
  1. 基于自定义开发的Apriori关联算法库,Aprioiri算法主要有两部分组成:发现频繁项集和找出关联规则
  2.  引入R语言的关联算法包,实现关联结果的挖掘
  • 关联结果展示:通过pyecharts实现

四. 具体过程

4.1 导入所需要的库

具体库

  • pandas:用于数据读取和数据转换
  • apriori:自定义库,关联算法库
  • pyecharts:数据可视化库

代码如下

import pandas as pd
from CorrelationAnalysis import apriori
from pyecharts.charts import Graph
from pyecharts import options as opts  # 配置方法库

4.2 数据预处理

基本思路

  • 原数据是事务性的数据记录,需要转换为关联算法所需的记录
  • 关联的记录格式:每个订单ID对应的商品合并为一条记录
  • 提取方法:列表推导式
  • 记录数据类型:列表

代码如下

# 读取csv文件
data = pd.read_csv('order_table.csv')
# 数据转换
order_ids = pd.unique(data['order_id']) 
order_records = [data[data['order_id'] == each_id]['product_name'].tolist() for each_id in order_ids]
View Code

相关文章:

  • 2021-05-21
  • 2021-06-17
  • 2022-01-09
  • 2021-12-04
  • 2022-02-05
  • 2021-08-22
  • 2021-11-17
  • 2021-11-12
猜你喜欢
  • 2022-12-23
  • 2021-06-04
  • 2021-08-11
  • 2021-11-29
  • 2021-12-30
  • 2023-02-03
  • 2021-12-01
相关资源
相似解决方案