2023数模国赛C题:从数据洞察到智能决策——蔬菜定价与补货的Python实战全解析 1. 从数据清洗到关联分析揭开蔬菜销售的秘密第一次拿到商超三年销售数据时我对着几十万条记录头皮发麻。但别担心数据清洗就像整理凌乱的厨房——看似复杂其实有章可循。用Python的pandas加载数据后第一件事就是用df.isnull().sum()全面体检。记得有次比赛我差点被隐藏的空白值坑惨现在养成了用df.fillna(methodffill)向前填充的好习惯。处理时间序列有个小技巧把销售日期转为datetime格式后用df[weekday] df[date].dt.day_name()快速提取星期几。这招帮我发现了周末销量激增30%的规律。可视化方面seaborn.pairplot()能一键生成各品类销量关系矩阵比单独画六个散点图高效多了。单品关联分析时别被皮尔逊系数局限住。有次我用df.corr(methodspearman)发现辣椒和茄子的秩相关系数高达0.82后来调研才知道顾客常做鱼香茄子配辣椒。热力图配上plt.figure(figsize(12,8))调整尺寸避免小图挤成马赛克。2. 成本加成定价的数学魔法成本加成定价听着简单实操时掉坑的团队可不少。关键要明白1.2倍加成不是固定值我建过线性回归模型sm.OLS(sales, sm.add_constant(cost))发现花叶类蔬菜价格弹性系数达1.3意味着降价10%能带来13%销量增长。时间序列预测用statsmodels的SARIMAX比ARIMA更靠谱特别是处理季节性波动时。记得设置seasonal_order(1,1,1,7)捕捉周循环去年比赛这样做的队伍预测准确率普遍提高18%。用model.get_forecast(steps7).conf_int()还能输出置信区间给决策加个保险。构建收益最大化模型时目标函数要包含损耗成本。假设批发价w、售价p、损耗率α实际收益其实是(p-w)*min(预测销量, 补货量) - w*α*补货量。用scipy.optimize.minimize求解时别忘加约束bounds[(0,None)]保证补货量为正。3. 单品补货的运筹智慧当空间限制遇上最小陈列量问题就变成带约束的整数规划。先用df.groupby(品类).size()统计各品类单品数避免某个品类占比过高。构建决策变量时我习惯用pulp.LpVariable.dicts(x, item_list, catBinary)生成0-1变量表示是否选择该单品。目标函数要细化到单品层面lpSum( (p[i]-w[i])*q[i] - w[i]*α[i]*q[i] for i in items )其中q[i]≥2.5。用prob.addConstraint( lpSum(x[i] for i in items) 33 )控制总单品数记得同时设置≥27的下限。有个实战技巧先用sklearn.cluster.KMeans把单品按销量分簇确保每个品类都有代表单品入选。曾有个队伍只选高销量单品结果花菜类全军覆没被评委指出组合失衡。4. 数据闭环从假设到迭代优化优秀论文往往胜在数据思维。建议建立数据采集→模型训练→策略生成→效果反馈的闭环。比如记录实际销售与预测的偏差用mean_absolute_percentage_error量化误差持续优化模型。空间利用率常被忽视。可以计算单品体积*补货量/货架容量作为新约束我用这个方法帮超市提升23%的空间收益。另外收集天气数据加入模型后雨天叶菜销量预测准确率提升了15%。损耗数据要动态更新。建立当日损耗率 base_rate β*过剩率的调整公式比固定值更符合实际。有次发现菌菇类损耗突增排查发现是冷藏柜温度异常这就是数据驱动运营的典型案例。5. Python实战代码精要数据清洗阶段的核心代码# 合并批发价与销售数据 merged pd.merge(sales_df, price_df, on[日期,单品编码], howleft) # 处理折扣价 merged[实际售价] np.where(merged[是否打折]是, merged[售价]*0.8, merged[售价])预测模型训练示例from statsmodels.tsa.statespace.sarimax import SARIMAX model SARIMAX(train_data, order(1,1,1), seasonal_order(1,1,1,7)) results model.fit(dispFalse) forecast results.get_forecast(steps7)整数规划求解片段import pulp prob pulp.LpProblem(补货优化, pulp.LpMaximize) x pulp.LpVariable.dicts(单品, item_list, catBinary) prob lpSum( [profit[i]*x[i] for i in item_list] ) prob lpSum( [x[i] for i in item_list] ) 33 prob.solve(pulp.PULP_CBC_CMD(msgFalse))可视化建议使用plotly交互图表特别是展示多维关系时import plotly.express as px fig px.scatter_matrix(df, dimensions[销量,成本,损耗], color品类, hover_name单品) fig.update_layout(width1000, height800) fig.show()

相关新闻

最新新闻

SerenityOS 命令行选项解析指南:getopt 与 getopt_long 用法、返回值与底层实现

SerenityOS 命令行选项解析指南:getopt 与 getopt_long 用法、返回值与底层实现

SerenityOS 命令行选项解析指南:getopt 与 getopt_long 用法、返回值与底层实现 【免费下载链接】serenity The Serenity Operating System 🐞 项目地址: https://gitcode.com/GitHub_Trending/se/serenity 导读 本文以 getopt(3) 手册 为核心&a…

2026/10/1 19:32:24
轻量服务器还是ECS?大促云服务器选购与避坑实战指南

轻量服务器还是ECS?大促云服务器选购与避坑实战指南

每年大促节点,群里永远有人在问同一个问题:“38元的轻量服务器到底怎么抢?为什么我每次点进去都是已售罄?68元直购和99元的ECS我到底选哪个?”作为一个常年帮团队和自己采购云服务器的老用户,我太清楚这种纠…

2026/9/30 21:32:07
为 AI 代理的 Review 动作编写 Cedar 审批门控策略:review-agent-governance 策略编写实战指南

为 AI 代理的 Review 动作编写 Cedar 审批门控策略:review-agent-governance 策略编写实战指南

为 AI 代理的 Review 动作编写 Cedar 审批门控策略:review-agent-governance 策略编写实战指南 【免费下载链接】agents Multi-harness agentic plugin marketplace for Claude Code, Codex, Cursor, OpenCode, GitHub Copilot, and Google Antigravity 项目地址:…

2026/10/2 15:29:32
PaddleOCR 手写数学公式识别算法 CAN 实战指南:Counting-Aware Network 训练、评估与推理部署

PaddleOCR 手写数学公式识别算法 CAN 实战指南:Counting-Aware Network 训练、评估与推理部署

PaddleOCR 手写数学公式识别算法 CAN 实战指南:Counting-Aware Network 训练、评估与推理部署 【免费下载链接】PaddleOCR Turn any PDF or image document into structured data for your AI. A powerful, lightweight OCR toolkit that bridges the gap between i…

2026/10/1 19:32:23
Spring源码解析:构造器注入的类型转换与候选匹配机制

Spring源码解析:构造器注入的类型转换与候选匹配机制

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/1 19:32:35
openai-agents-python 多模型接入指南:深入解析 AnyLLMModel 适配层与 any-llm 路由

openai-agents-python 多模型接入指南:深入解析 AnyLLMModel 适配层与 any-llm 路由

openai-agents-python 多模型接入指南:深入解析 AnyLLMModel 适配层与 any-llm 路由 【免费下载链接】openai-agents-python A lightweight, powerful framework for multi-agent workflows 项目地址: https://gitcode.com/GitHub_Trending/op/openai-agents-pyth…

2026/9/30 21:32:11

日新闻

周新闻

月新闻