上一篇的数据筛选比较简单,是在某一列上进行数据筛选,实践中,筛选条件往往更复杂,比如要求你筛选出年龄大于20岁的女员工并写入到一个新的sheet中。
基本思路是不变的,你只需要掌握一个新的pandas技能就可以了
import pandas as pd
result_file = "./data/数据筛选.xlsx"
df = pd.read_excel(result_file)
target_excel = "./data/年龄大于20的女员工.xlsx"
writer = pd.ExcelWriter(target_excel, engine='openpyxl')
filter_df = df[(df['年龄'] >= 20) & (df['性别'] == "女")]
filter_df.to_excel(writer, sheet_name="年龄大于20的女员工", index=False)
writer.save()
注意看这行代码
filter_df = df[(df['年龄'] >= 20) & (df['性别'] == "女")]
年龄和 性别分别做了筛选,两个筛选条件使用 & 连接,表示并的关系, 筛选出的数据就符合年龄大于20性别为女的要求。
如果筛选条件是年龄小于20岁或者性别为男,那么就需要在连个筛选条件之间使用 | 连接
filter_df = df[(df['年龄'] < 20) & (df['性别'] == "男")]
QQ交流群: 211426309