环境:Python3.8.5 pip20.2.4 安装pandas库

条件:统计所有Excel中药品名称、数量,汇总到一张表中。

注意问题:初始化DataFrame()要放到for循环外中,否则会导致只统计最后一次循环的内容。

# 导包
import pandas as pd
import os
# 文件前置路径
path = r"C:\Users\admin\Desktop\99\222"
# 获取所有的文件
filename = os.listdir(path)
# 初始化DataFrame
data = pd.DataFrame()
# 遍历文件集合
for i in range(len(filename)):# 读取文件df = pd.read_excel("C:\\Users\\admin\\Desktop\\99\\222\\" + filename[i])# 去掉第二行   感觉可以把这行代码去掉,未实验。df1 = df.drop([1])# 去掉药品名称列与数量的行数据包含NaN数据df2 = df1[['Unnamed: 2', '配药信息']].dropna(axis=0)# 得到最终需要的数据df3 = df2.drop([0])# 追加数据data = data.append(df3)
# 写入到xxx.xlsx文件中
info_marks = pd.DataFrame(data)
info_marks.to_excel('222.xlsx')
打印df  得到以下格式

打印df1  得到以下格式

打印df2  得到以下格式

打印df3  得到最终格式   去掉了药品名称与数量行

结果:
遗留问题:如果有重复数据,可以去重,并且把数量相加。就不需要在去Excel中做一遍统计了。 有时间在琢磨琢磨。或者看到这个信息问题的大哥们,给出个解决意见。十分感谢。
PS:一开始想用Xlwt、Xlrd库处理,没找到批量处理的办法。。。就放弃了

# 单文件处理
# 写excel
import xlwt
# 读excel
import xlrd# 初始化workbook对象
f = xlwt.Workbook()
# 添加一个workbook对象
sheet1 = f.add_sheet(u'sheet1', cell_overwrite_ok=True)
# 标题 也就是第一行值
row0 = ['药品名称', '数量']
# 列值 第一列的值
column0 = []
# 列值 第二列的值
column1 = []filename = r"C:\Users\admin\Desktop\99\liu\安时明_2020071800566(2020071800527).XLS"
data = xlrd.open_workbook(filename)
byindex = data.sheet_by_index(0)  # 获取第几个sheet页
cols = byindex.col_values(2)  # 获取 药 品 名 称 这一列的值
cols2 = byindex.col_values(17)  # 数量 这一列的值
del cols[1]  # 去除Excel中 C2值
del cols[-1]  # 去除Excel中 处方总金额 这一处的值
ypName = [i for i in cols if i != '']  # 去除空元素
del cols2[0]  # 去除Excel中 R1的值
del cols2[0]  # 去除Excel中 R2的值
sl = [i for i in cols2 if i != '']  # 去除空元素
column0 = ypName
column1 = sl
# 生成第一行的值
for i in range(0, len(row0)):sheet1.write(0, i, row0[i])
# 生成第一列的值 药品名称
for i in range(0, len(column0)):sheet1.write(i + 1, 0, column0[i])
# 生成第二列的值 数量
for i in range(0, len(column1)):sheet1.write(i + 1, 1, column1[i])
# 保存  目录为当前文件目录下
f.save('test.xls')

请多指教 谢谢

Python-pandas批量读写操作Excel相关推荐

  1. python中xlrd写操作_Python读写操作Excel模块_xlrd_xlwt_xlutils

    Python 读写操作Excel -- 安装第三方库(xlrd.xlwt.xlutils.openpyxl) 如果仅仅是要以表单形式保存数据,可以借助 CSV 格式(一种以逗号分隔的表格数据格式)进行 ...

  2. 用pandas批量分组处理excel数据

    用pandas批量分组处理excel数据 需求比较简单,按照指定字段分组,计算指定字段的和或均值. 用SQL处理的话就一个groupby,可是没有数据库环境,只好用python(比起SQL真的是一点也 ...

  3. 【Python数据分析】Python3操作Excel(二) 一些问题的解决与优化

    [Python数据分析]Python3操作Excel(二) 一些问题的解决与优化 参考文章: (1)[Python数据分析]Python3操作Excel(二) 一些问题的解决与优化 (2)https: ...

  4. python 通过openpyxl来操作Excel文件(一 ):读取Excel文件

    这篇文章讲python 通过openpyxl来读取Excel文件 不清楚怎么通过openpyxl来写入Excel文件的小伙伴可以看我另一篇文章 传送门python 通过openpyxl来操作Excel ...

  5. python对文件读写操作

    不知道大家是否跟我一样,总是分不清楚python里面对于读写操作,今天给自己重新总结一下. w+ 可以同时读写,如果文件不存在,则新建文件,写入时是清空之前的内容. a+可以同时读写,如果文件不存在, ...

  6. 新技能 | 使用python代码来高效操作Excel表格 (文末赠书5本)

    新技能 | 使用python代码来高效操作Excel表格 (文末赠书5本) 在日常学习和工作中,少不了要跟Excel表格打交道.而我们作为程序猿,深知代码编程给人带来的便捷性,那我们怎么样使用代码来操 ...

  7. python win32com + VBA宏 操作Excel,清除Excel中的公式

    python win32com + VBA宏 操作Excel,清除Excel中的公式 最近有个需求是自动化清楚excel中的公式,尝试了使用openpyxl读取的时候不加载公式,但这样的结果是使用了公 ...

  8. python 通过openpyxl来操作Excel文件(二 ):写入Excel文件

    这篇文章讲python 通过openpyxl来写入Excel文件,不清楚python怎么读取Excel文件的小伙伴可以去看下我的另一篇文章 传送门https://blog.csdn.net/i_cof ...

  9. Python 读写操作Excel —— 安装第三方库(xlrd、xlwt、xlutils、openpyxl)

    数据处理是 Python 的一大应用场景,而 Excel 则是最流行的数据处理软件.因此用 Python 进行数据相关的工作时,难免要和 Excel 打交道. 如果仅仅是要以表单形式保存数据,可以借助 ...

最新文章

  1. skiplist 跳表(1)
  2. R语言使用haven包的read_spss函数读取spss格式数据、使用haven包的read_sas函数读取SAS格式数据、使用haven包的read_dta函数读取Stata格式数据
  3. 如何解决Office2016安装时提示:错误1406。安装程序无法将值写入注册表项\.xlsx
  4. awk的正则表达式提取
  5. HTML DOM中DIV的Style:margin,border,padding
  6. Logstash完成ELK集群
  7. 如何将freemarker文件转化为html文件
  8. html标签object和embed,html标签object和embed的区别
  9. docker 远程连接 文件看不到_Java 开发提升十倍生产力:IDEA 远程一键部署 Spring Boot 到 Docker...
  10. es6之Generator
  11. centos7.2安装五笔输入法的方法(king已测)
  12. C语言---数字迷宫
  13. bim webgl 模型 轻量化_BIM模型轻量化是什么?BIM模型轻量化原理
  14. 侠客密码查看器 v3.8 build 0615 绿色
  15. Thinkphp仿众图网图片素材下载站源码/自适应手机端资源下载站源码
  16. 大学机器人类公选课(ROS机器人高效编程)申请表、大纲、部分教案、进度表等材料分享
  17. Linux环境下ATAPI MO的使用方法(转)
  18. 什么是监控报警以及如何实现,超详细讲解
  19. 研究Google maps及51ditu的图片切割及存储方法
  20. Gradle 插件 + ASM 实战 - 监控图片加载告警

热门文章

  1. 智科专业大二时候的python课程设计:亚马逊数据集股票分析
  2. 为什么高频信号的指向性更好? Quora上一个很直观的回答
  3. vue 七牛上传图片
  4. 小觅智能 | VINS 学习笔记
  5. php中奖概率算法程序,PHP中奖概率的抽奖算法程序代码
  6. Version control in MicroStrategy
  7. MySQL学习笔记(6)—— 慢查询日志和索引
  8. 师兄帮帮忙:有困难,找师兄!
  9. iOS14.5beta4推送升级,安全性更新来了
  10. 台式计算机一般多大功率,台式机一般要用多少瓦的电源?