【数据分析&数据挖掘】计算每日营业额&最火菜品统计

 1 import pandas as pd
 2 import numpy as np
 3
 4 # 计算每日营业额 加载数据
 5 detail = pd.read_excel("./meal_order_detail.xlsx")
 6 print("detail: \n", detail)
 7 print("detail的列名称: \n", detail.columns)
 8
 9 # 1、计算出每个产品的营业额
10 detail.loc[:, "pay"] = detail.loc[:, "counts"] * detail.loc[:, "amounts"]
11 print(detail)
12
13 # 2、构建日数据
14 # 先将时间数据转化为pandas默认支持的时间序列数据
15 detail.loc[:, "place_order_time"] = pd.to_datetime(detail.loc[:, "place_order_time"])
16
17 # 通过列表推导式来获取日属性
18 detail.loc[:, "day"] = [i.day for i in detail.loc[:, "place_order_time"]]
19
20 print(detail)
21
22 # 3、计算营业额——按照日进行分组,统计pay的sum
23 res = detail.groupby(by="day")["pay"].sum()
24 # res = detail.groupby(by="day")["pay"]  # 一个对象
25
26 print("res: \n", res)
 1 # 求这家店最火的菜品,以及售卖份数
 2 import pandas as pd
 3
 4 # 加载数据
 5 detail = pd.read_excel("./meal_order_detail.xlsx")
 6 print("detail: \n", detail)
 7 print("detail的列名称: \n", detail.columns)
 8
 9 # 先将dishes_name转化为category类型
10 detail.loc[:, "dishes_name"] = detail.loc[:, "dishes_name"].astype("category")
11
12 # 统计describe分析
13 print("对于菜品最火及售卖份数的统计分析: \n", detail.loc[:, "dishes_name"].describe())
14
15 # 白饭/大碗不算菜品
16 # 删除白饭的行
17 bool_index = detail.loc[:, "dishes_name"] == "白饭/大碗"
18 print("bool_index")
19
20 # 确定哪些行是白饭大碗
21 drop_index_list = detail.loc[bool_index, :].index
22
23 # 删除
24 detail.drop(labels=drop_index_list, axis=0, inplace=True)
25
26 # 保留法
27 bool_id = detail.loc[:, "dishes_name"] != "白饭/大碗"
28
29 # 保留True的行
30 detail = detail.loc[bool_id, :]
31
32 # 再去统计菜品的deccribe
33
34 # 先将dishes_name转化为category类型
35 detail.loc[:, "dishes_name"] = detail.loc[:, "dishes_name"].astype("category")
36
37 # 统计describe分析
38 print("对于菜品最火以及售卖份数的统计分析: \n", detail)

原文地址:https://www.cnblogs.com/Tree0108/p/12116079.html

时间: 2024-08-14 18:04:13

【数据分析&数据挖掘】计算每日营业额&最火菜品统计的相关文章

【转】数据分析/数据挖掘 入门级选手建议

1.数据分析和数据挖掘联系和区别 联系:都是搞数据的 区别:数据分析偏统计,可视化,出报表和报告,需要较强的表达能力.数据挖掘偏算法,重模型,需要很深的代码功底,要码代码,很多= =. 2.怎么入门 请百度"如何成为一名数据分析师"或者"如何成为一名数据挖掘工程师".英文好上Quora,不行上知乎,看看入门资料. 3.选哪些书 看入门资料给你提供的书,有电子版下电子版,没电子版买纸质书,花不了多少钱. 4.用什么语言 数据分析:excel是必须,R是基本,pytho

List集合元素的计算、排序、查找、统计

引入:针对List元素的计算.排序.查找.统计. 1)计算(max,min,sum) 示例1: list01=[45, 90, 123, 987, -18, 78, 96] print("list01的最小值:",min(list01)) print("list01的最大值:",max(list01)) print("list01所有元素的和:%d"%sum(list01)) 示例2: list02=["Abby", &quo

动态可视化 数据可视化之魅D3,Processing,pandas数据分析,科学计算包Numpy,可视化包Matplotlib,Matlab语言可视化的工作,Matlab没有指针和引用是个大问题

D3.js入门指南 什么是D3?D3是指数据驱动文档(Data-Driven Documents),根据D3的官方定义: D3.js是一个JavaScript库,它可以通过数据来操作文档.D3可以通过使用HTML.SVG和CSS把数据鲜活形象地展现出来.D3严格遵循Web标准,因而可以让你的程序轻松兼容现代主流浏览器并避免对特定框架的依赖.同时,它提供了强大的可视化组件,可以让使用者以数据驱动的方式去操作DOM. D3是这样一个特殊的JavaScript库,它利用现有的Web标准,通过更简单的(

python&数据分析&数据挖掘--参考资料推荐书籍

1.要用python做数据分析,先得对python语言熟悉,推荐一本入门书 :笨方法学python (learn python the hard way),这本书用非常有趣的讲述方式介绍了python的基本语法,非常适合非计算机专业作为入门书来看. 2.用python做数据分析的话,推荐用 anaconda,地址https://www.anaconda.com/download/  ,可以根据需要选择版本 3.后面需要添加各种包的时候,在开始-所有程序,打开Anaconda prompt,输入

06-机器学习.数据分析.数据挖掘的区别于联系

数据分析:数据分析是指用适当的统计分析方法对手机的大量数据进行分析,并提取有用的信息,以及形成结论,从而对数据进行详细的研究和概括过程.在实际工作中,数据分析可帮助人们做出判断;数据分析一般而言可以分为统计分析.探索性数据分析和验证性数据分析三大类. 数据挖掘:一般指从大量的数据中通过算法搜索隐藏于其中的信息的过程.通常通过统计,检索.机器学习.模式匹配等诸多方法来实现这个过程. 机器学习:是数据分析和数据挖掘的一种比较常用.比较好的手段.. 原文地址:https://www.cnblogs.c

【数据分析&数据挖掘】异常值的判断与去除——3σ & 箱线图分析

1 import pandas as pd 2 3 # 异常值 ——远离正常值范围的错误值 4 # 异常值 ——删掉 5 6 # 异常值判断 ——3σ 箱线图分析 7 8 # 3σ 接住标准正态部分得到的规律——99.73%都在(μ-3α,μ+3α)之间,超过这个范围的数据认为是异常的 9 10 def three_sigma(data): 11 """ 12 进行3sigma异常值剔除 13 :param data: 原数据——series 14 :return: bool

【数据分析&数据挖掘】numpy、pandas&matplotlib

1 import numpy as np 2 import pandas as pd 3 4 """ 5 numpy --科学计算库 6 核心---ndarray 7 本质: 存储单一数据类型的 内存连续的 N维数组 8 C F 风格存储 9 10 matplotlib ---数据可视化的库 11 能绘制2-D 与 3-D 图形 12 13 pandas ----进行数据处理的库 14 里面封装了部分numpy 与matplotlib 功能 15 结构核心: 16 常用两种结

【数据分析&数据挖掘】连锁超市数据分析案例

1 import pandas as pd 2 3 # 加载数据 4 data = pd.read_csv("./order.csv", encoding="ansi") 5 # print("data: \n", data) 6 print("data的列索引: \n", data.columns) 7 8 # 销量中存在销量为0, 或者销量<0的数据 9 # 删除不正确的数据 10 # ——保留销量>0的数据据

【数据分析&amp;数据挖掘】数组的创建

1 import numpy as np 2 import random 3 4 arr = np.array([1,2,3,4]) 5 print('arr:\n', arr) 6 print('arr的类型:\n', type(arr)) 7 8 # 用arange来创建数组 9 arr = np.arange(0, 5, 2) 10 print('arr:\n', arr) 11 print('arr的类型:\n', type(arr)) 12 13 # 生成一个等差数组 14 # 参数1