python两个表格相同数据筛选_如何将多个表格中数据筛选汇总在一个表格里?

谢邀,这是个非常常见的需求,解决起来也非常容易。下面用分别用excel和python演示一下如何操作。

先建立了一个和题主工作簿类似的甲乙两个excel文件,每个文件包含3个sheet,其实不管几个文件,几个sheet,操作都是一样的。

先看下用excel怎么做

新建一个文件,依次选择“数据”-“新建查询”- “从文件”-“从文件夹”,然后选择待合并的文件所在文件夹。

在弹出话框中依次点击“合并”和“合并和编辑”,然后点击“示例文件参数1”-“确定”

按住CTRL同时选中Source.Name与Data这两列,删除其他列。

然后将数据展开。

因为题主的表第一行都有个标题,所以要除第一行。跳出对话框中输入1,按确定。

再将第一行用作标题。

点击序号边的筛选按钮,筛选掉重复的标题行。

给显示“甲”、“乙”这列改个名,比如“来源”。

加载为连接。至此,拼合多张表的工作已经完成。接下来统计各课程数量。

依次点击“插入”-“数据透视表”,然后选择刚刚加载的查询,“打开”并“确定”。

依次把字段“微课类型”、“来源”、“课件数量”拖放至“行”“列”“值”便轻松得到统计结果。

python做起来会更容易一点

十来行代码就可以出结果了。代码如下

import pandas as pd

from pathlib import Path

def read_sheet(file, sheet):

df = pd.read_excel(file, sheet, skiprows=1)

df['来源'] = file.name

return df

path = Path('f:/workbooks')

df = pd.concat((

read_sheet(file, sheet)\

for file in path.iterdir()\

for sheet in range(3)\

))

df.pivot_table(values='课件数量', index='微课类型', columns='来源', aggfunc=sum)

希望可以帮助到你。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:游动-白 设计师:我叫白小胖 返回首页
评论
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值