【机器学习】【贝叶斯算法】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值越大则相关性越强

相关推荐
智算菩萨9 分钟前
【论文复现】Applied Intelligence 2025:Auto-PU正例无标签学习的自动化实现与GPT-5.4辅助编程实战
论文阅读·python·gpt·学习·自动化·复现
MyBFuture14 分钟前
Halcon 金字塔与边缘检测技术解析
人工智能·计算机视觉·halcon
树獭非懒15 分钟前
AI大模型小白手册 | RAG进阶:从胡说八道到引经据典
人工智能
攻城狮7号38 分钟前
SaaS的末日重构:AI Agent浪潮下的危机与新生
人工智能·ai agent·saas末日·saas升级重构
2601_9499251838 分钟前
空运舱位突发爆舱?解析 AI Agent 如何在 2 小时内重构物流应急响应底层逻辑
人工智能·重构·物流rpa
FluxMelodySun1 小时前
机器学习(二十八) 特征选择与常见的特征选择方法
人工智能·机器学习
小陈工1 小时前
2026年3月31日技术资讯洞察:AI智能体安全、异步编程突破与Python运行时演进
开发语言·jvm·数据库·人工智能·python·安全·oracle
香港科大商学院内地办事处1 小时前
港科资讯|郑光廷教授出席国际科技组织发展与全球科技治理论坛 分享协作实践
人工智能·科技
Westward-sun.1 小时前
基于 OpenCV DNN 模块实现图像风格迁移
人工智能·神经网络·opencv·计算机视觉·dnn
AI枫林晚1 小时前
源码解析Claude Code 项目 queryLoop 运行机制分析
人工智能·架构