python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > pandas的dataframe过滤数据

Python中pandas的dataframe过滤数据方法

作者:菜鸟小超

这篇文章主要介绍了Python中pandas的dataframe过滤数据方法,Pandas是另外一个用于处理高级数据结构和数据分析的Python库,Pandas是基于Numpy构建的一种工具,需要的朋友可以参考下

df[df['column_name'] > value]
df[(df['column_name'] > value1) & (df['column_name'] < value2)]
df[df['column_name'] != value]
df[df['column_name'].str.contains('string')]
df[(df['column_name1'] > value1) & (df['column_name2'] < value2)]

在以上例子中,df是pandas DataFrame对象,‘column_name’、‘column_name1’、'column_name2’是DataFrame的列名,value、value1、value2是筛选条件。通过这些布尔索引的使用,可以方便地选取满足特定条件的行。

演示demo

假设有一个包含电影信息的数据集,包含电影名称、导演、评分等信息。数据集如下:

电影名称导演评分
TitanicJames Cameron7.8
AvatarJames Cameron8.5
The Shawshank RedemptionFrank Darabont9.3
The GodfatherFrancis Ford Coppola9.2
The Dark KnightChristopher Nolan9.0
InceptionChristopher Nolan8.8

下面是使用布尔索引过滤数据的例子:

输出结果如下:

             电影名称                    导演   评分
0         Titanic          James Cameron  7.8
1          Avatar          James Cameron  8.5
2  The Shawshank Redemption    Frank Darabont  9.3
3    The Godfather  Francis Ford Coppola  9.2
4  The Dark Knight     Christopher Nolan  9.0
5        Inception     Christopher Nolan  8.8

              电影名称                 导演   评分
4   The Dark Knight  Christopher Nolan  9.0
5         Inception  Christopher Nolan  8.8

                   电影名称                 导演   评分
2  The Shawshank Redemption    Frank Darabont  9.3

在以上例子中,第一个过滤条件是选取评分大于8.0的电影,第二个过滤条件是选取由Christopher Nolan执导的电影,第三个过滤条件是选取电影名称中包含"Redemption"的电影。根据这些过滤条件,我们可以得到不同的结果。

到此这篇关于Python中pandas的dataframe过滤数据方法的文章就介绍到这了,更多相关pandas的dataframe过滤数据内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文