Powered by 加拿大pc @2018 RSS地图 HTML地图
哈喽,大家好,今天给大家介绍一下如何通过pandas筛选出指定的行。我会结合简单之前的筛选方法进行对比,看看两者之间有什么区别?我们就直接以案例开始了:
1.筛选出指定行之传统方法
首先我们先创建一组数据如下:
df = pd.DataFrame({'A': range(1, 6),
... 'B': range(10, 0, -2),
... 'C C': range(10, 5, -1)})
我们想要找到A大于B列的所有数据,我们会分为两步,首先将A、B两列进行对比:
df.A > df.B
然后将对比的结果,放入df中就获得了所在行:
df[df.A > df.B]
结果如下:
2.筛选出指定行之Query
上面的方法是我们通过传统的方法获取指定行的方法,现在我们看看通过Query怎么操作
df.query('A>B')
从上面可以看出,我们是直接讲条件放入括号中即可,是不是瞬间就简单多了,但是需要注意其中的引号。
3.有空格的列名怎么办
我们会Query的时候有一个特殊情况就是,我们会发现第三列’C C‘中间是有空格的,如果直接书写可能会出错,因此我们需要使用反引号:
df.query('B == `C C`')
显示结果如下:
好了,今天的文章就先到这里了,明天见!