【机器学习】【贝叶斯算法】Python实现数据预处理实战演练(以购物数据为例)

import pandas as pd
from mlxtend.frequent_patterns import apriori
from mlxtend.frequent_patterns import association_rules
retail_shopping_basket = {'ID': [1, 2, 3, 4, 5, 6],
                          'Basket': [['Beer', 'Diaper', 'Pretzels', 'Chips', 'Aspirin'],
                                     ['Diaper', 'Beer', 'Chips', 'Lotion', 'Juice', 'BabyFood', 'Milk'],
                                     ['Soda', 'Chips', 'Milk'],
                                     ['Soup', 'Beer', 'Diaper', 'Milk', 'IceCream'],
                                     ['Soda', 'Coffee', 'Milk', 'Bread'],
                                     ['Beer', 'Chips']]
                          }
retail = pd.DataFrame(retail_shopping_basket)
retail = retail[['ID', 'Basket']]
pd.options.display.max_colwidth = 100
retail

日常中见到的购物数据往往是所购买的数据而不是全部数据

数据集中都是字符串组成的,需要转换成数值编码

将展示不需要的字段属性拿出来

retail_id=retail.drop(columns=['Basket'])
retail_id

根据每个数据集特性找到其分割符,如该数据集中的分隔符为,

retail_Basket=retail.Basket.str.join(',')
retail_Basket

 

retail_Basket=retail_Basket.str.get_dummies(",")
###get_dummies()需要告知其分隔符    该函数主要用于进行数据处理
##列属性为所有出现的属性   出现了则该记录该属性为1
retail_Basket

retail=retail_id.join(retail_Basket)##将无关项重新组合
retail

 后续在选择频繁项集与确定规则时不需要其他无关属性

frequent_itemsets_2=apriori(retail.drop(columns=['ID']),use_colnames=True)
##min_support默认为0.5
frequent_itemsets_2

association_rules(frequent_itemsets_2,metric='lift')

lift值越大则相关性越强

相关推荐

  1. 机器学习本科课程 实验5 分类

    2024-02-01 14:24:02       26 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-01 14:24:02       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-01 14:24:02       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-01 14:24:02       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-01 14:24:02       18 阅读

热门阅读

  1. 网络安全笔记

    2024-02-01 14:24:02       30 阅读
  2. 软件工程知识梳理2-需求分析

    2024-02-01 14:24:02       33 阅读
  3. 开发安全之:Header Manipulation

    2024-02-01 14:24:02       26 阅读
  4. sqlalchemy——@listens_for

    2024-02-01 14:24:02       31 阅读
  5. 《Docker极简教程》--前言--Docker的简介

    2024-02-01 14:24:02       30 阅读
  6. SpringMVC校验注解不生效

    2024-02-01 14:24:02       32 阅读
  7. C++的学习记录

    2024-02-01 14:24:02       36 阅读
  8. 【Midjourney】新手指南:参数设置

    2024-02-01 14:24:02       29 阅读
  9. 【数据结构】单调队列

    2024-02-01 14:24:02       36 阅读
  10. C语言结构体

    2024-02-01 14:24:02       33 阅读
  11. 图论——最短路径

    2024-02-01 14:24:02       24 阅读