还剩2页未读,继续阅读
文本内容:
班级姓名O【课前小练】【项目名称】寻找关联次数最多的商品【情境描述】(必修一第
二、三章的项目挑战)人们通过研究发现,将某些不同商品(比如休闲食品和饮料)陈列在一起销售,能使相关商品的销售量增长20%~30%为了寻找这些能相互促进销量的商品,需要进行商品的关联分析“支持度”是反映商品关联性的一个重要度量值,为了统计相关商品的支持度,需要先统计相关商品的关联次数关联次数指的是不同商品出现在相同购物篮(相同订单)的次数如上表所示,商品X1和X4的关联次数是2(xl和x4在购物篮1和购物篮2中同时出现);商品X2和X6的关联次数是2(X2和X6在购物篮1和购物篮3中同时出现)……某超市想通过对商品的关联分析来改进商品的陈列,从而方便顾客的购物如何利用超市现有的后台的历史购物数据(如下图所示),找出关联次数最大的商品对,给超市的理货员在摆放商品时作参考,来促进商品销售【学习目标】能独立分析一个综合性问题,经历抽象建模、设计算法、编写程序、调试运行的全过程,增加对于维数组、二维数组、找最值算法的理解深度【项目评价】【项目任务】
一、抽象与建模.提炼问题的关键要素,并用符号表示.分析数据结构.数据结构分析用什么存储结构用什么逻辑结构.描述解决问题的计算模型罗列出需要哪些计算模型:
二、分模块设计并描述算法可以用自然语言、流程图.根据dd数组提供的数据,统计商品i和商品j的关联次数,并存储到二维数组glcs说明dd数组形如[
[123458]
[689104512]
[41582]
[127]]表示第1个订单里的商品是
1、
2、
3、
4、
5、8最后一个订单里的商品是1和2统计后glcs数组中的值为[24*33LL3L1]#表示1号商品与2〜10号商品的关联次数分别为4*33LL311
[4013311311]#表示2号商品与3〜10号商品的关联次数分别为133LL311
[1101100100]
[331030311]
[3313010311]
[1101100111]
[1100000000]
[331330011]
[1101110101]
[1101110110]]设计算法,实现上述功能逐一取出dd中的每个订单到s:i从到lens-2:j从i+1到lens-l:#在glcs中统计关联次数glcs[][]+=1glcs[][]=glcs[][]#对称性赋值.根据glcs中的各商品之间的关联次数,寻找最大关联次数,并输出最大关联次数的商品对,如上述glcs数据里最大关联次数是4对应的是商品1与2写出算法拓展挑战如果有多个最大值时,要输出全部商品对呢?
三、编写程序deftongjiglcss:#统计s一维数组中所有商品之间的关联次数,存储到glcs二维数组中return#——读取货号,按订单顺序存储到数组dd并构建货号到品名的映射字典pmimportpandasaspddf=pd.read_excel超市流水贝长xlsx”n=lendf.groupby“订单号”#统计订单数量dd=
[0]*n#存储每个订单中的货号pmXdf.at货号】df.at[OJ品名”]}dd⑼二[df.at[OJ货号口k=0foriinrangellendf:pm[df.at[ij货号口=df.at[ij品名ifdf.at[J订单号”上二df.at[,订单号]dd[k].appenddf.at[ij货号”]#在订单k中添加一个货号else:dd[k]=[df.at[ij货号口#新增一个订单,并添加该订单的第一个货号#一一统计商品i和商品j的关联次数,存储到二维数组glcs-—glcs=[[0foriinrangelenpm]forjinrangelenpm]forsindd:#依次取出dd中的每个订单含该订单的所有货号tongjiglcss-寻找最大关联次数的商品对一一#一个最大值:购物篮购物流水号商品购物篮1201609270027X]x2x3x4x5x6购物篮2201609270028X|X4x7x8x9购物篮3201609270029X2,X5X6X7X9ABCDEF1货号品名价格数量金额订单号2196g康师傅妙芙欧式
4.
514.520190306013280g香飘飘奶茶(麦香)
2.
625.2201903060143120g上好佳缤纷什锦软糖
4.
15312.45201903060154480ml原叶冰红茶
2.
324.620190306016570g香飘飘珍珠奶茶
3.
5310.5201903060177方便面(香辣)
2.
612.620190306018840名妙脆角(美式茄汁)
0.542201903060196阿尔卑斯棒棒糖(香蕉)
2.
812.82019030602107方便回(香辣)
2.
612.6201903060211840g妙脆角(美式茄汁)34122019030602129596ml娃哈哈纯真年代14420190306021310雀巢咖啡伴侣
8.
55434.2’2019030602144480nli原叶冰红茶339201903060215570g香飘飘珍珠奶茶
1.
923.8201903060216196g康师傅妙芙欧式
3.
6414.4201903060217280g香飘飘奶茶(麦香)
2.
625.22019030602184480ml原叶冰红茶
4.5418201903060319196g康师傅妙芙欧式
3.
5517.5201903060320570w香飘飘珍珠奶茶2362019030603。