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

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

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

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

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

python 复制代码
retail_id=retail.drop(columns=['Basket'])
retail_id

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

python 复制代码
retail_Basket=retail.Basket.str.join(',')
retail_Basket
python 复制代码
retail_Basket=retail_Basket.str.get_dummies(",")
###get_dummies()需要告知其分隔符    该函数主要用于进行数据处理
##列属性为所有出现的属性   出现了则该记录该属性为1
retail_Basket
python 复制代码
retail=retail_id.join(retail_Basket)##将无关项重新组合
retail

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

python 复制代码
frequent_itemsets_2=apriori(retail.drop(columns=['ID']),use_colnames=True)
##min_support默认为0.5
frequent_itemsets_2
python 复制代码
association_rules(frequent_itemsets_2,metric='lift')

lift值越大则相关性越强

相关推荐
AI浩几秒前
关于 Qwen3.8-Next 架构的设计:评估、效率与训练稳定性
人工智能·计算机视觉·自然语言处理
裕晟资质规划几秒前
西安档案数字化企业申报涉密档案数字化加工资质:业务准入、数据链路管控与审查要点
大数据·人工智能
DO_Community4 分钟前
面向 AI 工作负载,单核性能提升 30%:DigitalOcean v5 Droplets 云服务器正式上线
运维·服务器·人工智能
CRMEB4 分钟前
不懂设计也能有精美商城?CRMEB 主题广场与可视化装修的“千店千面“实操
人工智能·ai·小程序·开源·php
春涧草茶6 分钟前
慢就是快-11-1数据容器 | 列表
python
维克兜率天10 分钟前
【维克】技术指标是什么:从均线到MACD的数学原理
人工智能·笔记·python·算法·量化
广凌股份(广凌科技)11 分钟前
广凌智慧教室融合管理平台|现代技术如何改善课堂体验?
运维·人工智能·物联网
卷无止境17 分钟前
当FastAPI遇上机器学习,一个脚手架工具能省下多少工夫
后端·python·fastapi
sel_921 分钟前
【vLLM】vLLM 推理框架详解:从 PagedAttention 到生产级部署实战
人工智能·深度学习·算法·语言模型·框架·vllm
卷无止境25 分钟前
Kilo CLI 到底是什么
人工智能·后端·python