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

用 Python 实现连续数据分组求和并回写

💡 本文将教你如何用 Python + pandas 实现一个高效的小工具:
自动根据 Excel 数据中的“空行”进行 连续数据分组求和,并将结果写回到新的 Excel 文件中。
适用于能源数据、财务表格、分段实验数据等需要按空行划分分组的场景。


📊 一、问题背景

在日常数据处理中,我们常会遇到这种 Excel 表格:

数据
2
21
(空)
0
(空)
6
(空)
2
28
19
(空)
11
4
(空)
15
25
(空)
23

我们希望根据空行将数据进行分组,然后计算每组的数字之和。
例如:

分组数字求和结果
第1组2, 2123
第2组00
第3组66
第4组2, 28, 1949
第5组11, 415
第6组15, 2540
第7组2323

目标:让 Python 自动完成这些计算,并把结果写回新的 Excel 文件中。


🧩 二、思路分析

核心思路如下:

  1. 使用 pandas 读取 Excel 文件;
  2. 遍历数据列,用空值(NaN)作为分组边界;
  3. 每组内求和;
  4. 在分组结束行插入结果;
  5. 输出到新 Excel 文件。

⚙️ 三、完整代码实现

import pandas as pd# === 1. 读取 Excel 文件 ===
# 请把 "data.xlsx" 改成你的文件名(路径也可以)
df = pd.read_excel("data.xlsx")# 假设数据列名为 “数据”,若你的列名不同,请改成对应名字
data = df["数据"].tolist()# === 2. 连续数字分组求和 ===
groups = []
group_sum = 0for x in data:if pd.isna(x):  # 遇到空单元格 → 分组结束groups.append(group_sum)group_sum = 0else:group_sum += x# 最后一组
if group_sum != 0 or (len(data) and pd.isna(data[-1])):groups.append(group_sum)# === 3. 将结果保存为新列 ===
# 为保持对应关系,插入空行方便对齐
result_list = []
i = 0
group_sum = 0for x in data:if pd.isna(x):result_list.append(groups[i])i += 1else:result_list.append(None)# 若最后没有空行,也在末尾加上最后一个结果
if len(result_list) < len(data):result_list.append(groups[-1])df["结果"] = result_list[:len(df)]# === 4. 写入新 Excel 文件 ===
output_file = "data_with_result.xlsx"
df.to_excel(output_file, index=False)print("✅ 已生成新文件:", output_file)

📁 四、运行效果

执行完代码后,会在当前目录生成一个名为:

data_with_result.xlsx

的新文件。
打开后即可看到结果列自动填充:
在这里插入图片描述

数据结果
2
2123
(空)0
66
(空)49
11
415
(空)40
2323

清晰直观,每个分组的合计自动出现在对应的分隔行位置。


🚀 五、小结

本文介绍了一种实用的 Excel 自动化技巧:
使用 pandas 处理空行分隔的数据并按组求和。

👉 核心逻辑就是一句话:

“以空行作为分组边界,按组计算求和。”

这种方法在能源数据汇总、实验数据统计、项目分段结算等场景中非常高效。


✍️ 作者:IT小本本

📅 更新时间:2025-10-31

如果你觉得有用,欢迎点赞收藏!
更多实用数据处理技巧,将持续更新 ❤️

http://www.dtcms.com/a/555003.html

相关文章:

  • 从0学Java--day7
  • 做ppt医学专业图片网站徐州哪里做网站
  • 容器之间怎么通信?Docker 网络全解析
  • 网站优化平台网站建设 岗位
  • 老干部活动中心网站建设方案wordpress 企业库插件
  • 网站前台和后台轻松seo优化排名
  • 怎样防止网站被黑专业做网站制作自助建站系统
  • 了解学习LVS-DR模式配置
  • 对网站建设安全性的要求网站的建设成本
  • 中国七大城市电动汽车使用与充电分析数据集
  • 博爱网站建设重庆响应式网站方案
  • 微前端乾坤vue3项目使用tinymce,通过npm,yarn,pnpm包安装成功,但是引用报错无法使用
  • 石家庄房产信息网查询系统googleseo优化
  • Spec-kit 入门
  • 做影视网站代理犯法吗外贸做的社交网站
  • 服装工厂做网站的好处电子商务概念
  • 第三篇:不靠毅力靠方法:“小步子原理”启动改变飞轮
  • 网站图片太多做外贸需要浏览外国网站
  • 有什么网站做统计图的win7建网站教程
  • 阿里巴巴指数查询重庆网站营销seo电话
  • 抖音代运营是什么意思长春做网站公司长春seo公司
  • 动易 手机网站云南做网站报价
  • 做网站什么数据库用的多网络营销大师排行榜
  • 基于音乐推荐数据的逻辑回归实验报告:曲风特征与用户收听意愿预测
  • 基于MQTT的智能家居系统的学习
  • 广平企业做网站推广河北软文搜索引擎推广公司
  • 通信的经典知识点和问题(3)
  • 边界扫描测试原理 12 -- BSDL 6 INTEST 描述
  • python图像识别系统 AI多功能图像识别检测系统(11种识别功能)银行卡、植物、动物、通用票据、营业执照、身份证、车牌号、驾驶证、行驶证、车型、Logo✅
  • 数字化转型可以解决传统供应链的哪些问题?