pandas数据过滤

news2024/9/17 1:43:00

Pandas 数据过滤方法

Pandas 提供了多种方法来过滤数据,可以根据不同的条件进行筛选。以下是一些常见的 Pandas 数据过滤方法,结合实例进行讲解,希望能帮你快速理解。

1. 基于条件筛选行

可以使用布尔索引来根据条件过滤行。

import pandas as pd

# 创建示例数据
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David', 'Eva'],
        'Age': [24, 27, 22, 32, 29],
        'Score': [85, 90, 78, 88, 92]}
df = pd.DataFrame(data)

# 筛选 Age 大于 25 的行
filtered_df = df[df['Age'] > 25]
print(filtered_df)
2. 多条件筛选

可以使用 & (与) 和 | (或) 来结合多个条件进行筛选。

# 筛选 Age 大于 25 且 Score 大于 85 的行
filtered_df = df[(df['Age'] > 25) & (df['Score'] > 85)]
print(filtered_df)
3. 使用 isin() 方法筛选

isin() 方法用于筛选列中包含特定值的行。

# 筛选 Name 为 'Alice' 或 'Bob' 的行
filtered_df = df[df['Name'].isin(['Alice', 'Bob'])]
print(filtered_df)
4. 使用 str.contains() 筛选字符串

str.contains() 可以根据字符串的包含关系进行筛选。

# 筛选 Name 包含字母 'a' 的行
filtered_df = df[df['Name'].str.contains('a', case=False)]
print(filtered_df)
5. 使用 query() 方法筛选

query() 方法允许使用 SQL 风格的语法进行筛选。

# 使用 query 筛选 Age 大于 25 的行
filtered_df = df.query('Age > 25')
print(filtered_df)
6. 筛选缺失值

可以使用 isna()notna() 来筛选包含缺失值或非缺失值的行。

# 添加一行带有缺失值的数据
df.loc[5] = ['Frank', None, 80]

# 筛选 Age 为空的行
filtered_df = df[df['Age'].isna()]
print(filtered_df)

练习题目

练习 1: 创建一个包含 Name, Age, Score 的 DataFrame,并筛选出 Age 大于 30 的行。

练习 2: 使用布尔索引筛选出 Name 为 ‘David’ 或 ‘Eva’ 的行。

练习 3: 使用 isin() 方法筛选 Age 为 22, 24 的行。

练习 4: 使用 str.contains() 方法筛选 Name 中包含字母 ‘e’ 的行。

练习 5: 使用 query() 方法筛选出 Score 大于 85 且 Age 小于 30 的行。

习题答案

答案 1:

filtered_df = df[df['Age'] > 30]

答案 2:

filtered_df = df[(df['Name'] == 'David') | (df['Name'] == 'Eva')]

答案 3:

filtered_df = df[df['Age'].isin([22, 24])]

答案 4:

filtered_df = df[df['Name'].str.contains('e', case=False)]

答案 5:

filtered_df = df.query('Score > 85 & Age < 30')

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2116969.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

UMI复现基础环境安装配置全流程(三)——UMI环境搭建

一、搭建UMI环境 &#xff08;二&#xff09;中安装了Anaconda3&#xff0c;在此基础上&#xff0c;创建umi环境&#xff0c;在universal_manipulation_interface-main文件夹中打开terminal并输入指令 conda env create -f conda_environment.yaml 此指令根据yaml文件创建环…

​数据编织+敏捷BI,打造企业智赢AI时代的双引擎丨直播预告

大数据产业创新服务媒体 ——聚焦数据 改变商业 随着数字化和智能化浪潮的不断推进&#xff0c;企业如何高效利用数据资源&#xff0c;成为了获取竞争优势的关键。在这样的背景下&#xff0c;我们诚邀您参加即将于2024年9月10日14:30开启的直播——“数据编织敏捷BI&#xff0…

实时通信利器:Web Broadcast Channel API 全面解读

一. 引言 在 Web 开发领域&#xff0c;实时通信一直是一个备受关注的话题。为了更好地实现实时消息传递和跨标签页通信&#xff0c;在 HTML5 规范中引入了 Web Broadcast Channel API。在本文中&#xff0c;我们将解析 Web Broadcast Channel API&#xff0c;探讨其用法以及相…

常见的正则化方法以及L1,L2正则化的简单描述

深度学习中的正则化是通过在模型训练过程中引入某些技术来防止模型过拟合的一种策略。过拟合是指模型在训练数据上表现非常好&#xff0c;但在新的、未见过的数据上表现不佳。正则化通过限制模型的复杂度或对模型参数施加约束&#xff0c;从而提高模型的泛化能力。 常见的正则…

【机器学习】高斯网络的基本概念和应用领域

引言 高斯网络&#xff08;Gaussian Network&#xff09;通常指的是一个概率图模型&#xff0c;其中所有的随机变量&#xff08;或节点&#xff09;都遵循高斯分布 文章目录 引言一、高斯网络&#xff08;Gaussian Network&#xff09;1.1 高斯过程&#xff08;Gaussian Proces…

Notepad++ 修改 About

1. 用这个工具&#xff0c;看标题&#xff0c;修改 1700 里的 Caption, 保存为 xx.exe, 2.修改链接&#xff0c;先准备如上。 2.1 使用插件 Hex Editor&#xff0c;拖入刚保存的 Notepad.exe 到 Notepad.exe, 按 c..S..H 2.2 按 ctrlf 查找 68 00 74 00 74 00 70 00 73 00 3…

ggplot作图基础

目录 ggplot作图语法 散点图 折线图 group分组 face_wrap()图像切片摆放 facet_grid()交叉分组切片 条形图 2.1 单组变量条形图 2.2 多维展示变量 直方图有与密度估计 直方图 密度估计图 ..density..语法和stat“density” ggplot作图语法 ggplot作图是将数据按需要进…

锡林郭勒奶酪品牌呼和浩特市大召店盛大开业

礼献中秋&#xff0c;香飘乳都。为进一步拓展锡林郭勒奶酪区域公用品牌产品销售渠道&#xff0c;9月8日&#xff0c;锡林郭勒奶酪区域公用品牌大召店在呼和浩特市大召广场月明楼隆重开业&#xff0c;现场为第三批新授权的39家奶酪生产经营主体代表授牌。至此&#xff0c;锡林郭…

Debian 12如何关闭防火墙

在Debian 12中&#xff0c;默认的防火墙管理工具是ufw&#xff08;Uncomplicated Firewall&#xff09;。您可以使用以下命令来关闭防火墙&#xff1a; 关闭防火墙&#xff1a; sudo ufw disable查看防火墙状态&#xff1a; sudo ufw status如果需要重新开启防火墙&#xff1a;…

9.8javaweb项目总结

1.主界面用户信息显示 登录成功后&#xff0c;将用户信息存储在记录在 localStorage中&#xff0c;然后进入界面之前通过js来渲染主界面 存储用户信息 将用户信息渲染在主界面上&#xff0c;并且头像设置跳转&#xff0c;到个人资料界面 这里数据库中还没有设置相关信息 2.模糊…

数学建模笔记—— 主成分分析(PCA)

数学建模笔记—— 主成分分析 主成分分析1. 基本原理1.1 主成分分析方法1.2 数据降维1.3 主成分分析原理1.4 主成分分析思想 2. PCA的计算步骤3. 典型例题4. 主成分分析说明5. python代码实现 主成分分析 1. 基本原理 在实际问题研究中,多变量问题是经常会遇到的。变量太多,无…

通信工程学习:什么是PSK相移键控、2PSK/BPSK二进制相移键控

PSK相移键控、2PSK/BPSK二进制相移键控 PSK&#xff08;相移键控&#xff09;和2PSK/BPSK&#xff08;二进制相移键控&#xff09;是两种在通信系统中广泛使用的调制技术。以下是对它们的详细解释&#xff1a; 一、PSK&#xff1a;相移键控 1、PSK相移键控的定义&#xff1a;…

websocket client无法连接到websocket server 的问题

1. 问题描述 生产环境的websocket client和server无法通信 2. 日志现象 通过查看日志和问题复现&#xff0c;定位到是client连接到server失败&#xff0c;导致无法通信。 出现问题的代码 出现问题的日志 21:25:27.790 [main] INFO websocket.MyWebSocketClient - start to…

力扣第347题 前K个高频元素

前言 记录一下刷题历程 力扣第347题 前K个高频元素 前K个高频元素 原题目&#xff1a; 分析 我们首先使用哈希表来统计数字出现的频率&#xff0c;然后我们使用一个桶排序。我们首先定义一个长度为n1的数组&#xff0c;对于下图这个示例就是长度为7的数组。为什么需要一个长…

Redis进阶(七):分布式锁

在分布式系统下&#xff0c;涉及到多个节点访问同一个公共资源的情况&#xff0c;此时需要通过 锁 进行互斥控制&#xff1a;避免出现 线程安全问题。 1.分布式锁的基本实现 超卖问题&#xff1a; 解决: 采用redis实现分布式锁 可用采取&#xff1a;在购票的时候&#xff0…

C语言 | Leetcode C语言题解之第390题消除游戏

题目&#xff1a; 题解&#xff1a; int lastRemaining(int n) {int a1 1;int k 0, cnt n, step 1;while (cnt > 1) {if (k % 2 0) { // 正向a1 a1 step;} else { // 反向a1 (cnt % 2 0) ? a1 : a1 step;}k;cnt cnt >> 1;step step << 1;}return …

【机器学习】和【人工智能】在量子力学的应用及代码案例分析

知孤云出岫 这里写目录标题 一、机器学习和人工智能在量子力学中的应用概述二、量子态的表示与模拟2.1 变分自编码器&#xff08;VAE&#xff09;用于量子态模拟 三、量子系统的哈密顿量学习3.1 使用机器学习推断哈密顿量 四、量子计算中的算法优化4.1 变分量子算法&#xff08…

AI大模型日报#0908:OpenAI计划年底推出GPT Next、Roblox官宣AI秒生3D物体模型

导读&#xff1a;AI大模型日报&#xff0c;爬虫LLM自动生成&#xff0c;一文览尽每日AI大模型要点资讯&#xff01;目前采用“文心一言”&#xff08;ERNIE-4.0-8K-latest&#xff09;、“智谱AI”&#xff08;glm-4-0520&#xff09;生成了今日要点以及每条资讯的摘要。欢迎阅…

如果文件从存储卡中被误删除,存储卡数据恢复如何恢复?

如果文件被误从存储卡中删除&#xff0c;如何从Android 手机、相机或其他数码设备&#xff08; SD/CF/MicroSD/xD ...&#xff09;恢复照片视频&#xff1b;存储卡已格式化&#xff0c;原始 0 字节&#xff0c;空白&#xff1b;存储卡要求格式化&#xff1b;存储卡未显示、无法…

基于ONNX-YOLOv10-Object-Detection项目实现yolov10模型onnx-python推理

项目地址&#xff1a;https://github.com/ibaiGorordo/ONNX-YOLOv10-Object-Detection 项目依赖&#xff1a;onnxruntime-gpu、opencv-python、imread-from-url、cap-from-youtube、ultralytics 1、代码修改 代码改动说明&#xff1a;yolov10/yolov10.py中的第18行修改为以下…