当前位置: 首页 > news >正文

输入某餐厅的菜品名称,价格,销量,计算单品利润,(成本为价格的40%),输出利润最高的菜品。

为你完整设计一个餐厅菜品利润分析系统,结合大数据与智能管理课程的思想,从场景到代码、从模块到文档,全部覆盖。

1. 实际应用场景 & 痛点引入

场景

你是某餐厅的管理者或数据分析师,手头有菜品销售数据(菜品名称、售价、销量)。你想知道:

- 哪些菜品利润最高?

- 哪些菜品虽然销量高但利润低?

- 如何优化菜单结构,提升整体盈利能力?

痛点

- 人工计算每道菜的利润非常繁琐,尤其当菜品数量多时。

- 成本率固定为 40%,但 Excel 公式容易出错。

- 缺乏自动化分析工具,无法快速定位高利润菜品。

2. 核心逻辑讲解

1. 数据获取

- 输入菜品数据(CSV/Excel),字段包括:

"dish_name"(菜品名称)、

"price"(售价)、

"sales"(销量)。

2. 数据清洗

- 确保价格和销量为数值类型,去除无效数据。

3. 利润计算

- 成本 = 价格 × 40%

- 单品利润 = (价格 - 成本) × 销量 = 价格 × 60% × 销量

4. 排序与筛选

- 按单品利润从高到低排序。

- 输出利润最高的菜品。

5. 输出结果

- 打印利润最高的菜品信息。

- 可选:保存结果到 CSV。

3. 代码实现(模块化 + 注释)

目录结构

restaurant_profit_analysis/

├── data/

│ └── dishes.csv

├── output/

├── analysis.py

├── utils.py

├── README.md

└── requirements.txt

"requirements.txt"

pandas>=1.5.0

"utils.py"(工具函数)

import pandas as pd

def load_dish_data(file_path):

"""

加载菜品 CSV 文件

:param file_path: CSV 文件路径

:return: DataFrame

"""

df = pd.read_csv(file_path)

# 确保价格和销量为数值类型

df['price'] = pd.to_numeric(df['price'], errors='coerce')

df['sales'] = pd.to_numeric(df['sales'], errors='coerce')

return df

def clean_data(df):

"""

清洗数据:删除价格或销量为空的行

:param df: DataFrame

:return: 清洗后的 DataFrame

"""

return df.dropna(subset=['price', 'sales'])

"analysis.py"(主分析逻辑)

import pandas as pd

from utils import load_dish_data, clean_data

def analyze_profit(file_path):

# 1. 加载数据

df = load_dish_data(file_path)

df = clean_data(df)

# 2. 计算单品利润(成本率 40%)

cost_rate = 0.4

profit_rate = 1 - cost_rate # 利润率 60%

df['profit'] = df['price'] * profit_rate * df['sales']

# 3. 按利润从高到低排序

df_sorted = df.sort_values(by='profit', ascending=False)

# 4. 输出利润最高的菜品

top_dish = df_sorted.iloc[0]

print("利润最高的菜品:")

print(f"名称: {top_dish['dish_name']}")

print(f"售价: {top_dish['price']} 元")

print(f"销量: {top_dish['sales']} 份")

print(f"利润: {top_dish['profit']:.2f} 元")

# 5. 保存所有菜品利润排名

df_sorted.to_csv('../output/profit_ranking.csv', index=False)

print("\n利润排名已保存到 output/profit_ranking.csv")

if __name__ == "__main__":

analyze_profit('../data/dishes.csv')

4.

"README.md"

# 餐厅菜品利润分析系统

## 功能

- 导入菜品数据(名称、价格、销量)

- 计算单品利润(成本率 40%)

- 输出利润最高的菜品

- 保存利润排名到 CSV

## 环境依赖

- Python 3.8+

- pandas

## 安装

bash

pip install -r requirements.txt

## 使用

1. 将菜品数据放入 `data/dishes.csv`,格式如下:

dish_name,price,sales

宫保鸡丁,38,120

鱼香肉丝,32,150

清蒸鲈鱼,68,80

...

2. 运行分析脚本:

bash

python analysis.py

3. 查看终端输出的利润最高菜品,并在 `output/` 目录查看利润排名 CSV 文件。

## 作者

全栈开发工程师 & 技术布道者

5. 核心知识点卡片

知识点 说明

Pandas 数据加载

"pd.read_csv()" 读取 CSV,

"to_numeric" 转换类型

数据清洗

"dropna()" 删除缺失值,保证分析准确性

利润计算公式

"profit = price * (1 - cost_rate) * sales"

排序

"sort_values()" 按利润降序排列

数据保存

"to_csv()" 将结果保存为 CSV

模块化设计 工具函数与主逻辑分离,便于维护

6. 总结

本项目展示了如何用 Python 快速构建一个餐厅菜品利润分析工具,结合了:

- 大数据处理思想(数据清洗、特征计算)

- 智能管理应用(利润分析与决策支持)

- 全栈开发实践(模块化、文档化、可扩展性)

通过这个小项目,你可以:

- 掌握 Pandas 数据处理与分析的核心方法

- 学会定义和计算业务指标(利润)

- 理解如何将原始数据转化为可行动的洞察

- 为后续接入数据库、Web 前端、可视化大屏打下基础

如果你需要,我可以帮你生成一个示例 CSV 菜品数据文件,这样你可以直接运行代码看到效果。

利用AI高效解决实际问题,如果你觉得这个工具好用,欢迎关注我

http://www.jsqmd.com/news/253410/

相关文章:

  • XZ后门事件深度解析:漏洞机理、攻击演示与防御策略
  • 基于Python的大数据化妆品销售系统设计与实现
  • 信息化项目总结报告(文件WORD)
  • 2026必看:10个高品质艺术油画素材网站,免费商用选哪个?
  • 基于Python的个性化音乐推荐系统设计与实现
  • 《异构计算图中通信与计算的协同决策逻辑指南》
  • EI论文检索!第二届控制系统与电气工程国际学术会议(ICCSEE 2026)
  • 基于Python爬虫的网络小说热度分析系统设计与实现
  • FLUX.2图像生成模型:特性、API调用与性能解析
  • C#上位机开发源码 上位机项目源代码 采用基于RS485通讯总线的ModbusRtu协议
  • 高质量天空与云朵摄影图片哪里找?2026年10个免费商用素材网站推荐
  • 动态窗口稳医疗预警
  • 【毕业设计】SpringBoot+Vue+MySQL 学生评奖评优管理系统平台源码+数据库+论文+部署文档
  • 学长亲荐2026 MBA必备AI论文工具TOP10:开题报告文献综述全测评
  • 【other】Goofy Node
  • 建筑摄影与室内设计图片素材哪里找?10个优质网站帮你高效出片!
  • 低端游戏官网 - 支持网页在线玩经典DOS/Windows游戏平台
  • 2026年程序员转行为什么推荐选网络安全?一文详解分析!
  • 学术写作必备:AI工具TOP7及查重优化方案
  • 前后端分离安康旅游网站系统|SpringBoot+Vue+MyBatis+MySQL完整源码+部署教程
  • 学生宿舍信息系统信息管理系统源码-SpringBoot后端+Vue前端+MySQL【可直接运行】
  • 【python】一般python项目的目录结构
  • 【2025最新】基于SpringBoot+Vue的web酒店客房管理系统管理系统源码+MyBatis+MySQL
  • Java SpringBoot+Vue3+MyBatis 中小企业设备管理系统系统源码|前后端分离+MySQL数据库
  • 运维转行网络安全,这才是2026最狠全栈路线图!
  • 网安新人必看:2026年入行/转行,详细规划指南,看这一篇就够了!!!
  • Koyso游戏官网 - 免费游戏下载站,海量3A大作与单机游戏的资源聚合
  • 【python】每个python项目都要创建独立的虚拟环境
  • QSPI FLash的Feedback clk勾选问题
  • 智慧城市、数字政府、智能制造等重大工程涉及多方主体、多种资源和多重目标,传统的“头痛医头”式应对策略不再适用