Pandas数据筛选方法
- 1、引言
- 2、4种高频使用数据筛选方法
- 2.1 布尔索引
- 2.2 isin()方法
- 2.3 query()方法
- 2.4 loc[]方法
- 3、总结
1、引言
小屌丝:鱼哥,share一下 数据筛选的方法呗
小鱼:Excel就可以啊
小屌丝:我要用Pandas
小鱼:这… 让我想一下
小屌丝:这还用想? 这不是张嘴就来。
小鱼:我是想一下,等会吃啥。
小鱼:知识的力量, 不能用钱来衡量的。
小屌丝:… 我服了你个老六!
小鱼:那我再想一想
小屌丝:别想了,先给我讲完, 然后你在想吧。
小鱼:嗯, 有道理。
2、4种高频使用数据筛选方法
2.1 布尔索引
代码示例
# -*- coding:utf-8 -*-
# @Time : 2023-07-05
# @Author : Carl_DJ
'''
实现功能:
布尔索引 进行数据筛选
'''
import pandas as pd
# 创建DataFrame
data = {'Name': ['Tom', 'Nick', 'John', 'Amy'],
'Age': [20, 25, 30, 35],
'City': ['Beijing', 'Shanghai', 'Guangzhou', 'Shenzhen']}
df = pd.DataFrame(data)
# 使用布尔索引筛选年龄大于等于30的数据
filtered_data = df[df['Age'] >= 30]
print(filtered_data)
结果展示:
Name Age City
2 John 30 Guangzhou
3 Amy 35 Shenzhen
2.2 isin()方法
# -*- coding:utf-8 -*-
# @Time : 2023-07-05
# @Author : Carl_DJ
'''
实现功能:
isin()方法 进行数据筛选
'''
import pandas as pd
# 创建DataFrame
data = {'Name': ['Tom', 'Nick', 'John', 'Amy'],
'Age': [20, 25, 30, 35],
'City': ['Beijing', 'Shanghai', 'Guangzhou', 'Shenzhen']}
df = pd.DataFrame(data)
# 使用isin()方法筛选城市为北京或上海的数据
filtered_data = df[df['City'].isin(['Beijing', 'Shanghai'])]
print(filtered_data)
结果展示
Name Age City
0 Tom 20 Beijing
1 Nick 25 Shanghai
2.3 query()方法
# -*- coding:utf-8 -*-
# @Time : 2023-07-05
# @Author : Carl_DJ
'''
实现功能:
query()方法 进行数据筛选
'''
import pandas as pd
# 创建DataFrame
data = {'Name': ['Tom', 'Nick', 'John', 'Amy'],
'Age': [20, 25, 30, 35],
'City': ['Beijing', 'Shanghai', 'Guangzhou', 'Shenzhen']}
df = pd.DataFrame(data)
# 使用query()方法筛选年龄大于等于30且城市为广州的数据
filtered_data = df.query('Age >= 30 and City == "Guangzhou"')
print(filtered_data)
结果展示:
Name Age City
2 John 30 Guangzhou
2.4 loc[]方法
# -*- coding:utf-8 -*-
# @Time : 2023-07-05
# @Author : Carl_DJ
'''
实现功能:
loc[]方法 进行数据筛选
'''
import pandas as pd
# 创建DataFrame
data = {'Name': ['Tom', 'Nick', 'John', 'Amy'],
'Age': [20, 25, 30, 35],
'City': ['Beijing', 'Shanghai', 'Guangzhou', 'Shenzhen']}
df = pd.DataFrame(data)
# 使用loc[]方法筛选年龄大于等于25的数据,并选择Name和City两列
filtered_data = df.loc[df['Age'] >= 25, ['Name', 'City']]
print(filtered_data)
结果展示:
Name City
1 Nick Shanghai
2 John Guangzhou
3 Amy Shenzhen
3、总结
看到这里,今天的分享就到这里了。
今天主要对pandas的几种常用的数据筛选的方法进行了简单的介绍:
- 布尔索引筛
- isin()方法
- query()
- loc[]方法
当然, 数据筛选的方法,不止这4种,这里,小鱼就不做过多的介绍了。
也希望能在评论区看到你针对数据筛选的高频操作方法。
我是小鱼:
- CSDN 博客专家;
- 阿里云 专家博主;
- 51CTO博客专家;
- 51认证讲师等;
- 认证金牌面试官;
- 职场面试及培训规划师;
- 多个国内主流技术社区的认证专家博主;
- 多款主流产品(阿里云等)测评一、二等奖获得者;
关注我,带你学习更多更专业更前言的Python技术。