Python 代码实现按年份分析订单数据:销售指标全解读
看起来你的代码在计算销售金额和统计年份订单数量时有些地方需要完善。下面是修正后的代码: ```python import pandas as pd # 读取数据 df = pd.read_excel("https://cloud-cdn.acctedu.com/publicres/match/525839b97fa94429ac26bf57a798accc/order_datas.xlsx") # 添加年份列 df['年份'] = pd.to_datetime(df['订单日期']).dt.year # 从订单日期提取年份,并创建“年份”列 # 计算销售金额 df['销售金额'] = df['销售单价'] * df['销售数量'] # 计算每个订单的销售金额 = 销售单价 * 销售数量 # 按年份分组 grouped = df.groupby('年份') # 将数据按“年份”列进行分组,便于逐年分析 # 遍历每个年份,计算相关指标 for year, group in grouped: # 遍历每个年份的分组数据 total_order_count = group.shape[0] # 计算该年份的总订单数量(行数) total_sales_amount = group['销售金额'].sum() # 计算该年份的总销售金额 average_sales_amount = group['销售金额'].mean() # 计算该年份的平均销售金额 max_sales_amount = group['销售金额'].max() # 计算该年份的最大单笔销售金额 min_sales_amount = group['销售金额'].min() # 计算该年份的最小单笔销售金额 print(f"年份: {year}") print(f"总订单数量: {total_order_count}") print(f"总销售金额: {total_sales_amount:.2f}") print(f"平均销售金额: {average_sales_amount:.2f}") print(f"最大单笔销售金额: {max_sales_amount:.2f}") print(f"最小单笔销售金额: {min_sales_amount:.2f}") print("\n") ``` 解释: 1. 添加年份列:使用 `pd.to_datetime` 将 `订单日期` 转换为日期时间格式,并提取年份。 2. 计算销售金额:将 `销售单价` 和 `销售数量` 相乘,得到每个订单的 `销售金额`。 3. 按年份分组:使用 `groupby` 方法按 `年份` 列对数据进行分组。 4. 遍历每个年份:使用 `for` 循环遍历每个年份的分组数据,计算并打印相关指标: - `total_order_count`:该年份的总订单数量。 - `total_sales_amount`:该年份的总销售金额。 - `average_sales_amount`:该年份的平均销售金额。 - `max_sales_amount`:该年份的最大单笔销售金额。 - `min_sales_amount`:该年份的最小单笔销售金额。 这样,你就可以逐年的分析订单数量和销售金额等指标了。 ######[AI写代码神器 | 701点数解答 | 2024-11-10 14:29:10]
- Python 利用 Pandas 分析订单数据:逐年计算订单数量与销售金额总和(字节豆包 | 260点数解答 | 2024-11-10 14:26:05)281
- Python 代码实现按年份分析订单数据:销售指标全解读(阿里通义 | 701点数解答 | 2024-11-10 14:29:10)266
- 基于逻辑回归的乳腺癌数据分类预测:分析威斯康星乳腺肿瘤数据集(阿里通义 | 889点数解答 | 2025-06-19 12:02:10)198
- Python 轻松处理教学、后勤、行政账目数据:提取年份新操作 (字节豆包 | 69点数解答 | 2024-10-31 17:39:14)284
- Python 运行报错:urllib3 网络连接创建失败,原因及排查建议(字节豆包 | 161点数解答 | 2024-10-31 00:39:36)458
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)343
- Java代码实现从JSON数据中提取ID,涉及“数据”与“项目 - 知识库”结构(字节豆包 | 603点数解答 | 2025-04-15 22:48:51)234
- C++ 实现:计算一排鹅与最高、最矮鹅的身高差及代码详解(字节豆包 | 549点数解答 | 2025-11-16 20:19:06)81
- 编程揭秘:计算 𝑛! 在 𝑃 进制下末尾零个数的方法与代码实现(DeepSeek | 549点数解答 | 2026-01-11 17:49:54)46
- Python 实战:学生信息列表转字典、遍历、深拷贝及数据修改全流程(GPT | 422点数解答 | 2024-10-29 15:43:54)414
- Python实战:学生成绩列表转字典,深拷贝与数据修改操作全解析(字节豆包 | 254点数解答 | 2024-10-29 16:01:39)405
- SQL2008:三表联查显示姓名、订单号与明细号并按序排列 (字节豆包 | 148点数解答 | 2024-12-05 08:48:24)226