数据分析:餐厅订单数据分析

数据分析:餐厅订单数据分析

作者:i阿极

作者简介:Python领域新星作者、多项比赛获奖者:博主个人首页

😊😊😊如果觉得文章不错或能帮助到你学习,可以点赞👍收藏📁评论📒+关注哦!👍👍👍

📜📜📜如果有小伙伴需要数据集和学习交流,文章下方有交流学习区!一起学习进步!💪


文章目录

  • 数据分析:餐厅订单数据分析
  • 一、前言
  • 二、数据预处理
  • 三、统计卖出菜品的平均价格
  • 四、对菜名进行频数统计(取最大前10名)并可视化
  • 五、订单ID点菜数量Top10
  • 六、统计消费最多的订单ID
  • 七、统计中午11点-晚上22点订单量
  • 八、统计一个星期中哪一天订单量最多
  • 总结


一、前言

目前我国餐饮行业已进入成熟阶段,增长势头不减,整体水平逐年提升,综合水平和发展质量不断提高,发展步伐加快。同时经历多年的发展与市场竞争,中国餐饮业发展已经进入了投资主体多元化、经营业态多样化、经营模式连锁化和行业发展产业化的新阶段,中国餐饮业的发展势头持续强劲,发展前景更加看好。

改革开放以来,随着中国经济的快速发展,生产能力和人民收入水平的不断提高,中国从七八十年代的“吃饭难”到九十年代的“吃饱”,再到二十一世纪以来的不断追求吃特色、吃健康、吃营养、吃便捷、吃文化、吃休闲。中国餐饮行业伴随经济发展,不仅成为人民生活水平和消费能力提升的见证,也逐步成为扩内需、促销费、稳增长、惠民生的支柱产业。

同时随着互联网突飞猛进的发展和普及,“互联网+”已成为一个时代趋势,餐饮行业成为线上互联网连接线下的最大入口。整个餐饮行业包括餐饮食材供应领域,互联网餐饮行业一站式交易平台的进入改变了传统的餐饮行业的发展,将传统的线下交易搬到了线上,加快了行业的流通和服务的普及。

餐饮行业作为传统行业,为了提高订单量和降低成本。对某餐厅现有的数据进行可视化分析。

二、数据预处理

1.前期导入需要准备的库

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

2.加载数据

data1 = pd.read_excel('meal_order_detail.xlsx',sheet_name='meal_order_detail1')
data2 = pd.read_excel('meal_order_detail.xlsx',sheet_name='meal_order_detail2')
data3 = pd.read_excel('meal_order_detail.xlsx',sheet_name='meal_order_detail3')

3.按照行对数据合并

data = pd.concat([data1,data2,data3],axis=0)  
data.head(5)

在这里插入图片描述
4.按照列删除na列,并且修改源数据

data.dropna(axis=1,inplace=True)
data.info()

在这里插入图片描述

三、统计卖出菜品的平均价格

round(data['amounts'].mean(),3)  #方法一:pandas自带函数
round(np.mean(data['amounts']),3)  #方法二:numpy函数处理

结果:

44.821

四、对菜名进行频数统计(取最大前10名)并可视化

1.首先,统计出前十的菜名

dishes_count = data['dishes_name'].value_counts()[:10]
print(dishes_count)

在这里插入图片描述

2.将前十的菜名进行可视化

dishes_count.plot(kind='bar',fontsize=16)
for x,y in enumerate(dishes_count):plt.text(x,y+2,y,ha='center',fontsize=12)#显示出数量并在中心点

在这里插入图片描述

五、订单ID点菜数量Top10

1.对订单ID进行分组求和

data['total_amounts'] =data['counts']*data['amounts']  #统计单道菜消费总额
dataGroup = data[['order_id','counts','amounts','total_amounts']].groupby(by='order_id')
Group_sum = dataGroup.sum()  #分组求和
sort_counts = Group_sum.sort_values(by='counts',ascending=False)
sort_counts

在这里插入图片描述

2.对订单ID前十点菜数量进行可视化

sort_counts['counts'][:10].plot(kind='bar',fontsize=16)
plt.xlabel('订单ID')
plt.ylabel('点菜数量')
plt.title('订单ID点菜数量Top10')

在这里插入图片描述

六、统计消费最多的订单ID

1.将订单ID进行排序

sort_total_amounts = Group_sum.sort_values(by='total_amounts',ascending=False)
sort_total_amounts 

在这里插入图片描述

2.可视化

sort_total_amounts['total_amounts'][:10].plot(kind='bar')
plt.xlabel('订单ID')
plt.ylabel('消费金额')
plt.title('消费金额前10')

在这里插入图片描述

七、统计中午11点-晚上22点订单量

data['hourcount'] = 1 # 新列,用作计数器
data['time'] = pd.to_datetime(data['place_order_time']) #将时间转换成日期类型存储
data['hour'] = data['time'].map(lambda x:x.hour)
gp_by_hour = data.groupby(by='hour').count()['hourcount']
gp_by_hour

在这里插入图片描述

2.可视化

gp_by_hour.plot(kind='bar')
plt.xlabel('小时')
plt.ylabel('点菜数量')
plt.title('点菜数与小时的关系图')

在这里插入图片描述

八、统计一个星期中哪一天订单量最多

data['weekcount'] = 1
data['weekday'] = data['time'].map(lambda x:x.weekday())
gp_by_weekday = data.groupby(by='weekday').count()['weekcount']
gp_by_weekday

在这里插入图片描述

gp_by_weekday.plot(kind='bar')
plt.xlabel('星期')
plt.ylabel('点菜数量')
plt.title('点菜数量与星期关系图')

在这里插入图片描述


总结

为什么纸上谈兵不行?纸上谈兵太理想化了,把自己没有发现的问题隐藏了,当成了不存在的问题。只有实际多多亲自动手,才会发现有太多的问题是书上没提到的,也是自己没想到的。才会发现,一个小小的问题也要搞上半天。当然,如果你基础巩固的话,那这些问题应该都是可以被你解决的。熟练后,就不认为这些问题了。
不要看代码不难就感觉会了,只有自己的手打一遍,没有错误,编程的严谨些决定了,你错一个字母都不行。所以大家一定要注意,编程是自己打出来的,不是复制,粘贴你就会了,以后碰到了,还是不会。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/68062.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

浏览器控制台命令指南-重制版

提示:本文重制版,重制版, 文章目录 前言一、控制台.log命令二、第一步.clear命令1.clear2.更多~设置输出样式assert()count()dir() and dirxml()group(),groupCollapsed()和groupEnd…

chatgpt赋能python:Python操作网页的SEO

Python操作网页的SEO 在当今的数字时代,许多企业专注于提高其网站的排名。在这种竞争激烈的环境中,搜索引擎优化(SEO)是必不可少的。虽然有许多方法可以提高网站的排名,但其中一个最重要的是使用Python来操作网页。 …

商标名字一样,图标不一样属于商标侵权吗?

如果产品的商标名字不一样,但图标相似算商标侵权吗? 这个问题涉及到商标侵权行为的认定,在商标法的规定中,为了保护注册商标的合法权益,对商标权侵权行为的认定做了较为具体的解释,我们可以以此作为“商标名字一样图…

如何设计商标图案?

如何设计商标图案是企业经营者需要考虑的一个问题,商标的形象是企业的形象,而企业的形象直接影响着消费者对产品的看法。因此,设计好商标图案是非常重要的。下面小编就来给大家介绍一下:如何设计商标图案。 如何设计商标图案? 一…

新表情将至?腾讯申请新狗头图形商标

IT之家 10 月 9 日消息,腾讯科技 (深圳) 有限公司近日申请注册多个狗头形象图形商标以及“微信创意表情”商标,国际分类含广告销售、教育娱乐、通讯服务等,当前商标状态均为注册申请中。 近年来,微信、微博…

天猫精灵使用体验之一——天猫精灵初体验

在前面,小智已经介绍过,天猫精灵是小智在2017年双11下单的,等了一个多月,12月下旬才收到货。所以当天猫精灵从盒子里面蹦出来到体验官面前时,体验官就迫不可待地开始了一列表的体验和测评——什么开箱照、什么全家福的通通都没有,有的都是经过一个多月体验和测评后总结出…

揭秘!一文读懂数据策略在模型训练中的重要意义

编者按: 我们知道,当有了一个基础模型之后,可从两个维度来提高它的性能,一是以模型为中心的方法,即想尽各种办法提高算法设计的复杂度、技术含量等;二是以数据为中心的方法,通过数据增强、合成数…

AIGX 智生万物 | 浦软创业营(第九期)人工智能专场,正式开启招募!

"GPT 是我一生中见到的两项最具革命性技术之一。" ——Bill Gates"我认为ChatGPT引发的AI浪潮,在规模上与工业革命、电力、甚至是轮子的发明相当。" ——Geoffrey Hinton"关于人工智能未来十年的前景,我们有一系列很重要的经验…

一键生成伪原创文章有用吗(正确使用伪原创工具)

一定有不少的SEOer正在使用伪原创文件生成器这个工具吧,我可以正确的断定出来,一个懂SEO优化的SEOer绝对能够正确理解文章的作用,而那些似懂非懂的SEOer每天都在为原创文章的事情烦恼。往往一直以为每天坚持更新文章就可以获得排名的SEOer却没…

源码被倒卖,文章被抄袭,有点意思

说来这事也搞笑,从来没想过,源码会被倒卖,文章会被抄袭,这事,说来还挺有戏剧性。 关于电商收付通管理系统,这个是已经取得了中国版权保护中心计算机软件著作权登记证书,代码都已经提交备案入库…

iftop---实时流量监控工具

一、iftop是什么? iftop是类似于top的实时流量监控工具。 官方网站:http://www.ex-parrot.com/~pdw/iftop/ 二、iftop有什么用? iftop可以用来监控网卡的实时流量(可以指定网段)、反向解析IP、显示端口信息等&…

「FastAdmin」fastadmin二次开发中如何自定义查询数据

fastadmin二次开发中如何自定义查询数据 问题背景:最近做一个网站的过程中遇到了一个需求:对于不同用户组的用户,显示的数据要根据权限来筛选。问题看起来不是很难,文档和社区中已经给了足够的提示,我想对于自己遇到的…

运营商大数据获客,帮你找到可靠的精准客户

运营商大数据具有全面性、多维性、客观性等特点,数据相对集中,信息价值高。要是在互联网上亿的数据库里查询客源无异于大海捞针。在运营商海量基础上利用大数据的技术,分析《建模》、机器学习等操作,构建用户独立的标签体系&#…

【HiFlow】定期发送腾讯云短信发送群

博主昵称:跳楼梯企鹅 博主主页面链接:博主主页传送门 博主专栏页面连接:专栏传送门--网路安全技术 创作初心:本博客的初心为与技术朋友们相互交流,每个人的技术都存在短板,博主也是一样,虚心求教…

企业多云场景下的管理方案:多云统一账号管理(Cloud SSO)

本篇文章介绍云联壹云多云账号统一管理功能。本文分三部分,首先介绍为什么要设计多云统一账号管理这个功能。其次,介绍此功能的详细方案和工作原理,最后,介绍如何使用多云账号统一管理功能。 为什么需要Cloud SSO 多云账号统一管理…

BZMCTF:流量监控平台

http://www.bmzclub.cn/challenges#%E6%B5%81%E9%87%8F%E7%9B%91%E6%8E%A7%E5%B9%B3%E5%8F%B0通过枚举可知存在admin用户,当unameadmin时,发现提示密码错误,当uname!admin时提示用户名错误。 另外存在过滤SQL关键字符 简单fuzz一下过滤了哪…

【合宙4G Cat.1入门教程】--Cat.1 AT指令连接阿里云收发数据 上

使用AT指令,快速连接上云服务器进行数据收发,达到给设备联网的效果 1、阿里云创建设备 1.1 阿里云创建产品 登录阿里云,支付宝账号或淘宝账号即可 阿里云物联网平台地址:https://account.aliyun.com/login/login.htm?oauth_c…

【合宙4G Cat.1入门教程】--Cat.1 AT指令连接阿里云收发数据 下

通过使用AT指令,快速连接上云服务器进行数据收发,达到给设备联网的效果 1、连接阿里云 以下AT指令若有疑问可参考合宙的Luat 4G模块AT命令手册V4.1.6,这里对AT指令不做细致描述 根据【合宙4G Cat.1入门教程】–Cat.1 AT指令连接阿里云收发…

fastadmin腾讯云短信插件提示配置错误解决方法

装了腾讯云短信插件 总是提示配置错误 {"code": 0,"msg": "发送失败,请检查短信配置是否正确","time": "1666078465","data": null }这是由于该插件使用的模板跟我申请的验证码模板参数不一样导致的。…

【T+】T+登录软件提示“账号或者密码不正确,或用户不在云应用开通的企业中”

【问题现象】 手机号登录T提示:“账号或者密码不正确,或用户不在云应用开通的企业中” 【解决方法】 第一步:确认输入的手机号,密码正确,并且该手机号能正常登录畅捷通官网www.chanjet.com; 第二步:检查ea…