写在前面
该模型原理比较简单,网上有很多资料,但作为一个计算机外行,需要把这个模型用python建立起来,还是踩了不少坑。最大的一个坑是:数据库导出的数据以dataframe导入后分组转化为list;(因为数据库导出的数据是按单号和某个菜品,需要把菜品合并在一个list中)
目的
挖掘顾客消费交易记录,来对菜单、营销活动、门店话术等,进行规划;
代码
(由于没有编程基础,所以过多的使用了for语句,期望各位大佬帮忙优化一下;)
data=[[1,3,2,4,5,6],[2,4,6,3],[2,5,7,4],[5,7,4]]#这里我用我任意写的数据来做测试(最后数据库中导出的数据也会转化为这种模式)
I=[]#构建项目集
for i in data :
for x in i:
if x not in I :
I.append(x)
print('项目集为:',I)
SUPmin=0.5 #设置最小支持度
CONFmin=0.5 #设置最小置信度
print('SUPmin:',SUPmin)
print('CONFmin:',CONFmin)
FQE=[]#建立候选频繁集
S=[]#建立候选频繁集对应的支持度
D=len(data)
print('交易笔数:',D)
for item in I :
x=0
for tid in data:
if item in tid:
x+=1
if x/D>SUPmin:#supmin
S.append(x/D)
FQE.append(item)
print('频繁子项FQE:',FQE)
print('频繁子项支持度S:',S)
T2=[]#生成所有2项集
D2=[]#收集频繁2项集
SUP=[]
LENFQE=len(FQE)
for i in range(LENFQE):
for y in range(i+1,LENFQE) :
T2.append([FQE[i],FQE[y]])
print('所有二项子集T2:',T2)
print('-------求出&

本文介绍了如何使用Python进行关联规则模型的构建,旨在通过顾客消费交易记录来优化菜单、营销活动和门店话术。作者在实现过程中遇到将数据库数据转化为list的难点,并分享了初步测试中发现的菜品相关性,为决策提供了依据。
最低0.47元/天 解锁文章
410

被折叠的 条评论
为什么被折叠?



