写在前面
该模型原理比较简单,网上有很多资料,但作为一个计算机外行,需要把这个模型用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