【pandas的dataframe过滤数据方法】

news/2024/11/7 3:35:38/
  1. 选取某一列中大于某个值的行:
df[df['column_name'] > value]
  1. 选取某一列中满足多个条件的行:
df[(df['column_name'] > value1) & (df['column_name'] < value2)]
  1. 选取某一列中不等于某个值的行:
df[df['column_name'] != value]
  1. 选取某一列中包含某个字符串的行:
df[df['column_name'].str.contains('string')]
  1. 选取多个列中满足某个条件的行:
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

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

import pandas as pd# 读取数据
data = pd.read_csv('movies.csv')# 选取评分大于8.0的电影
high_rated_movies = data[data['评分'] > 8.0]# 选取由Christopher Nolan执导的电影
nolan_movies = data[data['导演'] == 'Christopher Nolan']# 选取电影名称中包含"Redemption"的电影
redemption_movies = data[data['电影名称'].str.contains('Redemption')]# 输出结果
print(high_rated_movies)
print(nolan_movies)
print(redemption_movies)

输出结果如下:

电影名称                    导演   评分
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"的电影。根据这些过滤条件,我们可以得到不同的结果。


http://www.ppmy.cn/news/68037.html

相关文章

linux环境安装使用tomcat详解

01-安装Tomcat # 0.下载tomcat http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.46/bin/apache-tomcat-8.5.46.tar.gz # 1.通过工具上传到Linux系统中 # 2.解压缩到/usr目录中 [rootlocalhost ~]# tar -zxvf apache-tomcat-8.5.46.tar.gz -C /usr/ -C 用来指…

Android Studio中android: baselineAligned属性认识及用途

文章目录 使用Button控件来演示使用TextView控件来演示 android:baselineAligned 设置子元素都按照基线对齐&#xff0c;默认是true 使用Button控件来演示 在项目中经常使用layout_weight属性利用比重来设置控件的大小&#xff0c;代码如下&#xff1a; <?xml version&qu…

涉及lvm分区的命令使用

pv命令 pvdisplay #查看物理卷 pvcreate 分区路径 #创建物理卷 pvremove 分区路径 #删除物理卷 vg命令 vgdisplay #查看卷组 vgcreate 卷组名称 #创建卷组 vgextend 卷组名称 分区路径 #将分区加入某个卷组 vgremove 卷组名称 #删…

【文本三剑客】AWK

AWK 一、AWK的工作原理1.1命令格式1.2awk常见的内建变量 二、awk实验2.1按行输入文本2.2按字段输出文本2.3通过管道符、双引号调用shell命令 一、AWK的工作原理 逐行读取文本&#xff0c;默认以空格或tab键为分隔符进行分隔&#xff0c;将分隔所得的各个字段保存到内建变量中&…

python队列

简介 使用队列方法进行多线程之间的信息交互 队列 队列 First in First out可以存储不同的数据类型&#xff0c;例如整数、字符串、字典使用put放数据使用get取数据&#xff08;如果当前队列中没有数据&#xff0c;此时会堵塞&#xff09; import queueq queue.Queue() q.…

看完这篇文章你就彻底懂啦{保姆级讲解}-----(I.MX6U驱动GPIO中断《包括时钟讲解》) 2023.5.9

目录 前言整体文件结构源码分析&#xff08;保姆级讲解&#xff09;中断初始化部分初始化GIC控制器初始化中断向量表设置中断向量表偏移 系统时钟初始化部分使能所有的时钟部分led初始化部分beep初始化部分key初始化部分按键中断初始化部分按键中断服务函数部分 while循环部分 …

【啃书C++Primer5】-c++有些理论基础需要了解,墙裂建议看看原书,有太多细节需要注意了

任何常用的编程语言都具备一组公共的语法特征&#xff0c;不同语言仅在特征的细节上有所区别。要想学习并掌握–种编程语言&#xff0c;理解其语法特征的实现细节是第一步。最基本的特征包括: 整型、字符型等内置类型变量&#xff0c;用来为对象命名 表达式和语句&#xff0c;…

将自己写的nginx.conf运行到阿里云linux服务器上

首先 你要保证自己的nginx.conf没有问题 可以先在本地运行一下 然后来到nginx.conf文件的所在目录 利用 scp -r ./nginx.conf 用户名(如果之前没设置过就是 root)服务器公网地址:/etc/nginx/将文件传到服务器上去 这里需要注意 如果你的服务器之前没有装过nginx 是没有这个目…