pandas 筛选_pandas里面按条件筛选

筛选是在平时的工作中使用非常频繁的功能,前文介绍了loc和iloc的筛选方法,现在继续介绍一些筛选的方法。

534e50f17c78d5aad58748323bfb269b.png


image

以>,<,==,>=,<=来进行选择(“等于”一定是用‘==’,如果用‘=’就不是判断大小了):

02801775a989f0b95b75cc7672985431.png


image

28080242a1695238191e34c0a1a9575d.png


image

使用 &(且) 和 |(或) 时每个条件都要用小括号括起来。

选取多列一定是两个方括号,其中内侧方括号代表是一个list:

38c15f2308ba53b1baf51d63106b2dfd.png


image

d125fba33d507c9a6ebc2293d25a3b6b.png


image

如果要选择某列等于多个数值或者字符串时,要用到.isin(), 我们把df修改了一下(isin()括号里面应该是个list):

f283d197fd5d75c219424dc7d1a20162.png


image

1569726806f20c7028720add4a35c15c.png


image

平时使用最多的筛选应该是字符串的模糊筛选,在SQL语句里用的是like,在pandas里我们可以用.str.contains()来实现。

1a9d7624be3bf517988459aac2e7ee26.png


image

9272dc9f8a6ce79ef7946d3ab339e42d.png


image

也可以使用 '|' 来进行多个条件的筛选:

d195e1d23fffa1721bdbe68f4ac9f633.png


image

a58078248638c52ef32f1a7e1c8fc28f.png


image

25026edc3589cc1204a32f25d1ea57f2.png


image

注意,这个‘|’是在引号内的,而不是将两个字符串分别引起来。’&‘在这里不能用。

如果中间的.str不用的话,就会出错,提示‘Series’数组没有‘contains'函数。

02571de4252041de99d216d68db98237.png


image

其实.str的作用就是将’Series‘转换为类似Strings的结构,然后就可以用contains函数了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值