基于 Python 的大型超市商品销售关联度分析系统
温馨提示:文末有 CSDN 平台官方提供的学长 Wechat / QQ 名片 :)
1. 项目背景
本项目通过对数据挖掘领域中的关联规则经典算法Apriori,运用关联规则对某大型超市超市的部分数据进行分析、挖掘,判定发现不同类商品之间的关联度,挖掘出商品中隐藏的实用价值,进而在实际销售运作中有效地避免这类错误,给超市提出适当的货架销售建议与货架摆放依据,利于增加超市的运营利润。
2. 功能组成
基于 Python 的大型超市商品销售关联度分析系统的主要功能包括:
3. Apriori关联挖掘算法
3.1 关联规则挖掘定义
关联规则挖掘是数据挖掘领域的热点,关联规则反映一个对象与其他对象之间的相互依赖关系,如果多个对象之间存在一定的关联关系,那么一个对象可以通过其他对象进行预测。大多数关联规则挖掘算法通常采用的一种策略是,将关联规则挖掘任务分解为如下两个主要的子任务:
- 频繁项集产生(Frequent Itemset Generation)其目标是发现满足最小支持度阈值的所有项集,这些项集称作频繁项集;
- 规则的产生(Rule Generation)其目标是从上一步发现的频繁项集中提取所有高置信度的规则,这些规则称作强规则。关联分析的目标发现频繁项集;由频繁项集产生强关联规则,这些规则必须大于或等于最小支持度和最小置信度。
关联分析的目标是:
- 发现频繁项集;
- 由频繁项集产生强关联规则,这些规则必须大于或等于最小支持度和最小置信度。
3.3 支持度
支持度表示该数据项在事务中出现的频度。 数据项集X的支持度support(X)是D中包含X的事务数量与D的总事务数量之比,如下公式所示:
关联规则X=>Y的支持度等于项集X∪Y的支持度,如下公式所示:
如果support(X)大于等于用户指定的最小支持度minsup,则称X为频繁项目集,否则称X为非频繁项目集。
3.4 置信度
置信度也称为可信度,规则 X=>Y 的置信度表示D中包含X的事务中有多大可能性也包含Y。表示的是这个规则确定性的强度,记作confidence(X=>Y)。通常,用户会根据自己的挖掘需要来指定最小置信度阈值,记为minconf。
如果数据项集X满足support(X) >= minsup,则X是频繁数据项集。若规则X=>Y同时满足confidence(X=>Y)>=minconf,则称该规则为强关联规则,否则称为弱关联规则。一般由用户给定最小置信度阈值和最小支持度阈值。发现关联规则的任务就是从数据库中发现那些置信度、支持度大于等于给定最小阈值的强关联规则。
4. 基于 Python 的大型超市商品销售关联度分析系统
4.1 系统注册登录
4.2 超市产品销售数据展示
4.3 超市产品销售整体情况可视化分析
针对超市近期销售数据进行统计分析和可视化:
@app.route('/product_analysis')
def product_analysis():"""婴儿性别和年龄数据"""type_counts = type_df['Types'].value_counts().reset_index()type_counts = type_counts.sort_values(by='index')# 用户一次购买商品数量分布product_len_counts = {}for pro in products:jian_shu = '{}件'.format(len(pro))if jian_shu not in product_len_counts:product_len_counts[jian_shu] = 0product_len_counts[jian_shu] += 1product_len_counts = sorted(product_len_counts.items(), key=lambda x: x[1], reverse=True)product_counts = {}for pros in products:for pro in pros:if pro not in product_counts:product_counts[pro] = 0product_counts[pro] += 1product_counts = sorted(product_counts.items(), key=lambda x: x[1], reverse=True)return jsonify({'类别': [g for g in type_counts['index'].values],'商品个数': type_counts['Types'].values.tolist(),'购买商品个数': [pc[0] for pc in product_len_counts],'购买商品个数人次': [pc[1] for pc in product_len_counts],'商品': [pc[0] for pc in product_counts],'购买商品的人数': [pc[1] for pc in product_counts],})
4.4 超市产品关联分析与推荐
@app.route('/clac_product_association/<min_support>/<min_threshold>')
def clac_product_association(min_support, min_threshold):"""计算产品之间的关联规则"""te = TransactionEncoder()# 进行 one-hot 编码te_ary = te.fit(products).transform(products)df = pd.DataFrame(te_ary, columns=te.columns_)# 利用 Apriori 找出频繁项集freq = apriori(df, min_support=float(min_support), use_colnames=True)# 计算关联规则result = association_rules(freq, metric="confidence", min_threshold=float(min_threshold))# 关联结果按照置信度或提升度高进行排序result = result.sort_values(by='confidence', ascending=False)# 结果保存result.to_csv('./results/product_association_min_support{}_{}.csv'.format(min_support, min_threshold),encoding='utf8', index=False)results = result.to_dict(orient='records')for result in results:result['antecedents'] = str(result['antecedents'])[10: -1] # 前因result['consequents'] = str(result['consequents'])[10: -1] # 后果return jsonify(results)
5. 总结
本项目通过对数据挖掘领域中的关联规则经典算法Apriori,运用关联规则对某大型超市超市的部分数据进行分析、挖掘,判定发现不同类商品之间的关联度,挖掘出商品中隐藏的实用价值,进而在实际销售运作中有效地避免这类错误,给超市提出适当的货架销售建议与货架摆放依据,利于增加超市的运营利润。
欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。
技术交流认准下方 CSDN 官方提供的学长 Wechat / QQ 名片 :)
精彩专栏推荐订阅:
1. Python 毕设精品实战案例
2. 自然语言处理 NLP 精品实战案例
3. 计算机视觉 CV 精品实战案例
基于 Python 的大型超市商品销售关联度分析系统相关推荐
- 基于 Python 的高考志愿高校及专业分析系统
温馨提示:文末有 CSDN 平台官方提供的学长 Wechat / QQ 名片 :) 1. 项目简介 本项目利用网络爬虫技术从某高考网抓取各大高校的历年高空录取分数线,并进行数据清洗存储到文件系统中,对 ...
- 【计算机专业毕设之基于python爬虫的汽车销量预测可视化分析系统-哔哩哔哩】 https://b23.tv/2gOjMVB
[计算机专业毕设之基于python爬虫的汽车销量预测可视化分析系统-哔哩哔哩] https://b23.tv/2gOjMVB https://b23.tv/2gOjMVB
- 基于Python语言的PUBG游戏数据可视化分析系统
[success]写于2019年大作业[/success] 博客链接:https://www.iamzlt.com/?p=299 代码链接请到博客链接内查看. 摘要 随着网络技术的兴起和普及,网络游戏 ...
- 基于python的小说大数据预测可视化分析系统
https://b23.tv/8x689Tm .使用requests模块爬取17k小说网站的数据,网站存在严重的加密反爬,使用bs4模块解析数据,然后存入数据. 2.使用使用sklearn 实现一元线 ...
- 基于python爬虫天气象大数据可视化分析系统
https://b23.tv/sxy54Qn flask web框架,数据使用requests模块爬取数据,使用bs4模块解析数据,并且存入数据库.数据库使用sqlite数据库.使用flask_sql ...
- 基于Python的旅游景点的数据采集与分析的研究
在旅游景点不断扩张,本基于Python的旅游景点的数据采集与分析系统按照软件开发方法进行研究,对系统先进行需求分析,确定系统必须做什么,进而进行系统设计,设计出满足需求的新系统,最后才是系统功能实现以 ...
- python编写超市销售系统_Python基础项目:超市商品销售管理系统
Python基础项目:超市商品销售管理系统 发布时间:2020-07-12 09:11:58 来源:51CTO 阅读:991 作者:nineteens 需求分析: 超市销售管理系统功能 1.欢迎用户使 ...
- python实现商品管理系统_python实现超市商品销售管理系统
本文实例为大家分享了python超市商品销售管理系统的具体代码,供大家参考,具体内容如下 class Goods(object): def __init__(self, id, name, price ...
- Python基础项目:超市商品销售管理系统
在前几章的案例中,主要以项目为中心介绍了相关知识点,通过手机通讯录管理系统和学生信息管理系统案例的学习,应该掌握了Python当中的基础语法,变量语句函数以及常见数据结构列表与字典的基本操作,通过世界 ...
最新文章
- 强哥PS强化培训班课程目录
- What systems can Opalis integrate with?
- 素数推断算法(高效率)
- ./configure,make,make install的作用
- tp5模板 使用php代码,thinkPHP的Html模板标签使用方法
- SAP Fiori Elements - smart filter bar study - filter display logic
- 我的Git使用-资料查询,名博笔记
- Redux有何优点?
- 刚刚,贺建奎回应一切:如果是我孩子,我会第一个去试验
- php 判断是否是16进制,如何求解16进制字符串的验证
- Linux学习笔记(尚硅谷韩顺平老师2021最新Linux教程)万字笔记
- SQLyog v12.09 (64 bit) 注册码
- class0:计算机的潜意识——机器学习
- Ubuntu安装NVDIA显卡驱动,CUDA及cuDNN
- php 获取照片信息,PHP读取照片信息
- mysql查询汉字拼音首字母的方法_MySQL查询汉字拼音首字母的方法
- 深圳APP开发婚恋社交App
- 【爬虫实战】Python 自制天气预报程序!爬取全国天气网
- win7 找不到 计算机策略组,win7打开组策略提示无权限怎么解决 win7系统组策略如何开启...
- Matlab坐标系绘制
热门文章
- 我的世界java版怎么装手柄,手把手教你 如何安装minecraft
- php培训视频 盘多多,SEO二十期培训视频教程
- 杏雨梨云Win7 x64 x86 WinXP 3in1 豪华装机版 1306
- 微信聊天,现支持一键寄快递
- 开源协议BSD、Apache2、GPL、LGPL、MIT
- matlab凯塞窗设计,转载:用MATLAB设计FIR滤波器的方法解析
- ucenter创始人密码忘记的修改方法
- Unity 网络视频教程第一讲
- 天河一号属于微型计算机,勇闯天河 探秘“天河一号”超级计算机
- 原声JS判断程序运行平台Pc OR Mobile