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

相关推荐
老金带你玩AI1 小时前
这几天,我都是拿手机让dot帮我干活
人工智能
7yewh4 小时前
SLAM 三维空间刚体运动(2)
数据结构·人工智能·机器人·嵌入式·slam
小虎AI生活4 小时前
WorkBuddy 模型选型实操:0.03 倍的 Space-Bunny 怎么用、派什么活、避什么坑
人工智能·超级个体·一人公司·青玥ai
ai小陈4 小时前
GPU服务器租用存储验收:检查点写入与磁盘吞吐实战
运维·服务器·人工智能·ai·ssh·gpu算力
微三云马玮均—GEO源码系统 私有化部署4 小时前
消费返物业费:消费+服务趋势的必然产物!
大数据·人工智能·物联网·区块链·生活
明月_清风5 小时前
Muse 登顶 App Store 第一,SDK 直接开源:AI Agent 开始进入下一个阶段
人工智能·后端
言乐65 小时前
HTML视频审核模型
python·django·virtualenv·pygame·tornado
JackSparrow4145 小时前
和AI一起将全部CSDN博文迁移到个人博客站
人工智能·程序人生·ai·github·cloudflare·astro·静态博客
55873 生态系统5 小时前
第 22 篇|社区聊天|55873 文明共建者的日常交流与协作界面
人工智能·区块链·55873全域文明生态体系·55873操作系统·55873社区聊天