python excel筛选统计_如何用python对excel表格进行筛选

这篇博客介绍了如何利用Python的pandas库结合def和lambda函数对数据进行筛选。通过定义工资在0到32000之间的条件,展示了如何应用这些函数筛选DataFrame中的特定行。此外,还提到了可以进一步筛选奖金在32000到40000之间的数据。
摘要由CSDN通过智能技术生成

① 可以用def函数来定义要筛选的条件,直接在def函数后面加上条件即可.

import pandas as pd

wb=pd.read_excel('/Users/xinxing/Desktop/payrollmaster.xlsx',index_col='empid')

print(wb)##读取数据

def salary_0_to_32000(a): ##用def定义筛选条件,工资小于32000

return 0<=a<32000

wb=wb.loc[wb['salary'].apply(salary_0_to_32000)];

##python筛选时用关键字loc,它会生成一个新的dataframe.

##wb['salary'].apply(salary的筛选条件).apply将salary列满足条件的值继续以列的形式保存下来

print(wb)

② 也可以用lambda函数进行筛选

wb=wb.loc[wb.salary.apply(lambda x:0<=x<32000)].loc[wb.bonus.apply(lambda x:32000<=x<40000)]

##此处定义了两个筛选条件

Python 中可以使用 openpyxl 库对 Excel 表格进行筛选统计。下面是一些示例代码来说明如何实现。 假设我们有一个 Excel 表格,包含以下列:姓名、年龄、性别、城市。 1. 筛选 我们可以使用 openpyxl 库中的 `AutoFilter` 对象来实现筛选功能。假设我们要筛选出城市为“北京”的行,代码如下: ```python from openpyxl import load_workbook # 加载 Excel 文件 workbook = load_workbook('example.xlsx') # 选择工作表 worksheet = workbook.active # 打开筛选 worksheet.auto_filter.ref = "A1:D1" # 筛选城市为“北京”的行 for row in worksheet.iter_rows(min_row=2): if row[3].value == '北京': for cell in row: print(cell.value, end=' ') print() ``` 上述代码中,我们首先使用 `load_workbook()` 函数加载 Excel 文件,然后选择工作表,接着打开筛选功能,并指定需要筛选的范围(第一行到第四列)。然后,我们使用 `iter_rows()` 方法迭代所有行,并判断每一行的第四列(城市)是否为“北京”,如果是则输出该行的所有单元格的值。 2. 统计 我们可以使用 openpyxl 库中的 `Worksheet` 对象的方法来实现对 Excel 表格统计。假设我们要统计城市为“北京”的人数,代码如下: ```python from openpyxl import load_workbook # 加载 Excel 文件 workbook = load_workbook('example.xlsx') # 选择工作表 worksheet = workbook.active # 统计城市为“北京”的人数 count = 0 for row in worksheet.iter_rows(min_row=2): if row[3].value == '北京': count += 1 print(f'城市为“北京”的人数为{count}人。') ``` 上述代码中,我们首先使用 `load_workbook()` 函数加载 Excel 文件,然后选择工作表。接着,我们使用 `iter_rows()` 方法迭代所有行,并判断每一行的第四列(城市)是否为“北京”,如果是则将计数器加一。最后,我们输出统计结果。 这只是一些基本的示例代码,您可以根据实际需求进行修改和扩展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值