用 DeepSeek 分析 Excel 前,先把每行含义、金额单位和分组规则写清楚。本例只读取 sales.xlsx 的 details 表,按地区汇总整数分销售额,并检查各组总额能否与明细总额相等。
准备输入与运行环境
Python 3.11,安装 pandas openpyxl。创建 sales.xlsx,details 表三列为 order_id、region、amount_cents;虚构三行是 001/East/12500、002/West/7500、003/East/5000。金额以分计,每行代表一笔订单。

给 DeepSeek 的任务说明
请只读 sales.xlsx 的 details。校验 order_id 唯一且不为空、region 非空、amount_cents 为非负整数字符串。按 region 汇总订单数与金额,核对汇总总金额=明细总金额。不要推断利润,不删异常行,不改变原工作簿。
在本地运行与检查
将下面代码保存为 example_14.py。进入保存该文件的目录,在终端执行 python example_14.py。代码应由你检查后执行,按实际字段修改。
from pathlib import Path
import pandas as pd
df = pd.read_excel("sales.xlsx", sheet_name="details", dtype="string", keep_default_na=False)
if set(df.columns) != {"order_id", "region", "amount_cents"} or df.empty:
raise ValueError("列名错误或表为空")
for col in ["order_id", "region"]:
df[col] = df[col].str.strip()
if df[col].eq("").any():
raise ValueError("存在空字段: " + col)
if df["order_id"].duplicated().any():
raise ValueError("订单编号重复,先确认记录口径")
if not df["amount_cents"].str.fullmatch(r"[0-9]+").all():
raise ValueError("金额必须为非负整数分")
df["amount_cents"] = df["amount_cents"].map(int)
summary = df.groupby("region", as_index=False).agg(
orders=("order_id", "count"), total_cents=("amount_cents", "sum"))
assert summary["orders"].sum() == len(df)
assert summary["total_cents"].sum() == df["amount_cents"].sum()
print(summary.to_string(index=False))
print("reconciled total_cents", df["amount_cents"].sum())
为什么要先确认每行是什么
如果一个订单拆成多行商品,order_id 重复可能合法,订单数就不能直接按行 count。此时应按订单唯一值统计,金额按商品行求和。本例明确每行一笔订单,重复编号会停止,防止在不知口径时得出结论。
怎样让 DeepSeek 解释结果
提供已核对的汇总表,并要求区分事实与假设,例如“East 的订单数为 2,总金额为 17500 分;原因未知”。销售额不是利润,地区差异不能直接解释成营销能力差异;没有成本和曝光量数据就不补充这些结论。
怎样确认结果正确
示例 East 应为 2 笔、17500 分,West 为 1 笔、7500 分,总计 25000 分、3 笔。用 Excel 手动筛选 East 并相加确认,再核对程序总额。编号重复或地区空白时应停止,不能通过勾稽相等就忽略数据口径错误。
适用边界与常见问题
这是虚构订单的描述性分组汇总,不是业务实测,不推断增长原因或利润。不同币种、退货、税费、日期边界和重复订单需要另定规则;原工作簿含未计算公式时还需检查读出的金额是否可用。
资料依据
接口说明核验日期:2026 年 10 月 1 日。Excel 读取;pandas 分组聚合。
Ai菜鸟网。发布者:AI小管家,转载请注明出处:https://www.alyyhw.com/30339.html