数据分析 python对dataframe(excel)数据列进行单一字段筛选和多字段筛选

一、讲解
1.单字段筛选:条件范围可以是数值或字符串
df[df[“column_name”] == value]

df.loc[df[“protein”] <= 30] 与 df[df[“protein”] <= 30]的运行结果是一样的 

2.多字段的筛选(又称为复合条件的筛选):

2.1 多个不同的特征列,并且条件可以对应不同的数值或字符串
df[(df[“column_name1”] <= value) & (df[“column_name2”] == str)]

2.2 isin函数:df[df[“column_name”].isin(li)] (# li = [20, 25, 27] 或 li = np.arange(20, 30))
根据从isin函数传入的列表(li),筛选出与列表中包含的数值或字符串相同的数据记录, 用法有点类似sql中的"in"


2.3 query函数:df.query("(column_name1 == ‘str1’) & (column_name2 == ‘str2’)")
根据query中引入的不同字段(str1,str2等)和条件,筛选出同时能满足这些要求的数据记录
                        
2.4 contains函数:df[df[“column_name”].str.contains(“str”)]
筛选出所有含有(str)的数据记录, 用法类似于sql中的"contains"

2.5 loc函数:df.loc[df["column_name] <= value]
根据特征属性(列名)或索引标签筛选数据:df.loc[columns 筛选条件] 或df.loc[index 筛选条件];
同时根据索引标签和特征属性(列名)筛选数据:df.loc[index 筛选条件,columns 筛选条件]
 

二、例子

 1.单一字段筛选例子:想筛选出”签证变更“的数据 

Qzbg=Qzbg[Qzbg['文件类型']=='签证变更']#只能筛选纯签证变更

或者 

 Qzbg=Qzbg[Qzbg["文件类型"].str.contains("签证变更")]

2.多字段筛选例子:筛选出含”估算、概算、预算、结算、决算、控制价“的数据,同时【审核金额元】不为0的数据

Ggyjjk = hb.query("(文件类型=='估算编制'|文件类型=='估算审核'|"
                           "文件类型=='概算编制'| "                     
                           "文件类型=='概算审核'| "
                           "文件类型=='概算审核,工程量清单/控制价审核'| "
                           "文件类型=='概算审核,估算审核'| "
                           "文件类型=='概算审核,结算编制,决算审核'| "
                           "文件类型=='工程进度款审核,工程量清单/控制价审核'| "
                           "文件类型=='工程进度款审核,结算审核'| "
                           "文件类型=='工程量清单/控制价编制'| "
                           "文件类型=='工程量清单/控制价编制,工程量清单/控制价审核'| "
                           "文件类型=='工程量清单/控制价编制,工程量清单/控制价审核,工程量清单/预算编制'| "
                           "文件类型=='工程量清单/控制价编制,工程量清单/预算编制'| "
                           "文件类型=='工程量清单/控制价编制,工程量清单/预算编制,工程量清单/预算审核'| "
                           "文件类型=='工程量清单/控制价编制,其他'| "
                           "文件类型=='工程量清单/控制价编制,其他联系函,工程联系函,其他'| "
                           "文件类型=='工程量清单/控制价审核'| "
                           "文件类型=='工程量清单/控制价审核,结算审核,其他联系函,请款资料,各类合同文件,行政资料,人事及财务资料,其他'| "
                           "文件类型=='工程量清单/控制价审核,其他'| "
                           "文件类型=='工程量清单/预算编制'| "
                           "文件类型=='工程量清单/预算编制,工程量清单/控制价编制'| "
                           "文件类型=='工程量清单/预算编制,工程量清单/预算审核'| "
                           "文件类型=='工程量清单/预算编制,询价报告'| "
                           "文件类型=='工程量清单/预算审核'| "
                           "文件类型=='工程量清单/预算审核,工程量清单/预算编制'| "
                           "文件类型=='工程量清单/预算审核,结算审核'| "
                           "文件类型=='估算编制'| "
                           "文件类型=='估算编制,概算审核,工程量清单/控制价编制,工程量清单/控制价审核,工程量清单/预算审核,工程量清单/预算编制'| "
                           "文件类型=='估算编制,工程联系函'| "
                           "文件类型=='估算审核'| "
                           "文件类型=='估算审核,估算编制'| "
                           "文件类型=='估算审核,估算编制,概算编制,概算审核,工程量清单/控制价编制,工程量清单/控制价审核,工程量清单/预算编制,工程量清单/预算审核,结算编制,结算审核'| "
                           "文件类型=='估算审核,估算编制,概算编制,概算审核,工程量清单/控制价编制,工程量清单/控制价审核,工程量清单/预算审核,工程量清单/预算编制,结算编制,结算审核'| "
                           "文件类型=='估算审核,估算编制,概算编制,概算审核,工程量清单/控制价审核,工程量清单/控制价编制,工程量清单/预算编制,工程量清单/预算审核,结算编制,结算审核'| "
                           "文件类型=='估算审核,结算审核'| "
                           "文件类型=='结算编制'| "
                           "文件类型=='结算编制,请款资料,其他'| "
                           "文件类型=='结算编制,工程量清单/控制价编制'| "
                           "文件类型=='结算审核'| "
                           "文件类型=='结算审核,工程进度款审核'| "
                           "文件类型=='结算审核,其他联系函'| "
                           "文件类型=='结算审核,结算编制,工程联系函,请款资料,其他'| "
                           "文件类型=='结算审核,决算审核'| "
                           "文件类型=='结算审核,请款资料'| "
                           "文件类型=='决算编制'| "
                           "文件类型=='决算编制,工程进度款审核'| "
                           "文件类型=='决算编制,其他联系函,其他'| "
                           "文件类型=='决算审核'| "
                           "文件类型=='其他,决算审核'| "
                           "文件类型=='其他联系函,估算审核'| "
                           "文件类型=='其他联系函,招标代理业务资料,咨询部业务资料,各类合同文件,其他,估算审核,工程量清单/控制价审核'| "
                           "文件类型=='请款资料,结算编制'| ""文件类型=='决算编制'|文件类型=='决算审核'|文件类型=='工程量清单/控制价编制'| 文件类型=='工程量清单/控制价审核') & (审核金额元 != 0)")

 注意:文件类型是长字段的话,代码定义文件类型也要长字段

  • 16
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值