Pandas常见筛选数据的五种方法其一逻辑筛选。看见必懂,懂者必会,会者必加分

news2024/12/23 10:12:17

        前言:Pandas的数据操作中,最基本的就是操作的筛选了,但是对新学员来说的这又是一个难点,因为方法比较多,不容易记。在此总结一下pandas中的一些常用的数据筛选操作。 

     逻辑筛选数据:切片([ ]),loc,iloc,这三种都是支持逻辑表达式的,选其中一种比较常用的,逻辑运算符 与或非(& | ~)any,all

展示使用的数据结构:

import pandas as pd
PATH = '/tmp/MSD0921.xlsx'
dataframe = pd.read_excel(PATH,engine='openpyxl', nrows=50)
SD1SD2SD3SD4SD5SD6SD7SD8
047212676
155555555
217111666
366322222
444444444
...........................
25815211776
25917742171
26013545556
26113555532
26217777777

1、筛选出某一列大于某一个数的所有数据,例如:SD1>=7

"""筛选出SD1列中大于等于7的数据"""
dataframe[dataframe['SD1'] >= 7]

2、筛选出某一列大于或者小于另一列的输有数据,例如:SD1 < SD2

"""筛选出SD1列小于SD2列所有数据"""
dataframe.loc[dataframe['SD1'] < dataframe['SD2']]

3、筛选出某些列的值大于或小于某些值的所有数据,例如:SD1 >6并且SD1<3,使用 &

"""筛选出SD1大于6,并且SD2小于3的所有数据"""
dataframe.loc[(dataframe['SD1'] > 6) & ( dataframe['SD2'] < 3)]

 4、筛选出某些列的值大于或小于某些值的所有数据,例如:SD1 >6或者SD1<3,使用 |

"""筛选出SD1小于6,或者SD2小于3的所有数据,并集"""
dataframe.loc[(dataframe['SD1'] > 6) | ( dataframe['SD2'] < 3)]

注意:需要注意的是在进行或(|)、与(&)、非(~)运算时,各个独立逻辑表达式需要用括号括起来

除了上边的与或之外,pandas还提供了 all,any,对逻辑计算后的布尔值在进行判断,所有都为True,all才返回True,反之亦然,any满足其中之一即可。all,any可传参数axis,1为行方向,0为列方向。利用此方法可对整体数据逻辑判断。

5、筛选出某些列的值同时大于或同时小于某值的所有数据,例如SD1>6 SD2>6

"""筛选出SD1, SD2同时大于6的所有数据"""
dataframe[(dataframe.loc[:,['SD1', 'SD2']] > 6).all(1)]

 

逻辑解读: dataframe.loc[:,['SD1', 'SD2']] > 6,这个逻辑计算的是SD1,SD2同时大于6返回的布尔值,逗号前的冒号表示所有行,返回的是False或者True的一个dataframe数据,整体在进行.all(1),操作返回的是SD1,SD2都为True的为True,否者为False所有行数。在使用切片 [ ],进行取数据。

下篇文章会总结pandas的其他的一些常用方法,函数筛选

pandas结合匿名函数lambda、比较函数eq(),le(),lt(),ge(),gt()

dataframe.query()

dataframe.filter()

dataframe.select_dtypes()

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

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

相关文章

ubuntu 安装、配置FTP

ubuntu 安装、配置FTP 提示&#xff1a;ubuntu 16.0.4&#xff0c;不同版本操作可能稍有不同 前言 本文主要对服务器安装及配置FTP做一个记录&#xff0c;涉及安装、配置、创建FTP账号、以及第一次连接异常等。 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可…

单载波频域均衡matlab仿真,包括卷积编码维特比译码,矩阵交织,QPSK调制解调,导频插入,MMSE-FDE频域均衡

目录 1.算法描述 2.仿真效果预览 3.MATLAB核心程序 4.完整MATLAB 1.算法描述 频域均衡是从校正系统的频率特性出发&#xff0c;利用一个可调滤波器的频率的频率特性去补偿信道或系统的频率特性&#xff0c;使包括可调滤波器在内的基带系统的总特性接近无失真传输条件。频域…

【Spring项目中的Controller理解】

目录 1. 添加依赖 2. 关于异常 1. 添加依赖 首先&#xff0c;需要保障此项目中存在spring-boot-starter-web依赖项&#xff0c;否则&#xff0c;当前项目并不具备Web应用程序开发所需的依赖&#xff01; 提示&#xff1a;spring-boot-starter-web是建立在spring-boot-starte…

基于Python的Django开发接口框架搭建

1、安装Django&#xff0c;如图1 命令行执行&#xff1a;pip install django 2、创建Django项目&#xff0c;如图2 django-admin startproject imooc 3、创建Django的应用项目&#xff0c;如图3 必须进入项目文件下执行命令&#xff1a; python3 manage.py startapp app …

✿✿✿JavaScript ---- 函数/js内置对象

目 录 一、函数 自调用函数如下演示&#xff1a; 二、JS中的内置对象 2.Number对象 3.Date 对象 补&#xff1a;第三方的日期工具类 moment.js 4.Math对象 5.数组对象 补&#xff1a;ES6中数组对象新增的方法 6.Global全局方法对象 7.RegExp(**)正则表达式对象 一、…

Word2010入门

Word简介 Microsoft Office Word 2010是微软公司的一个文字处理应用程序。 我们可以利用Word编辑文字、图文排版、建立表格、图形绘制。一直以来&#xff0c;Word都是最流行的文字处理应用程序。 .doc、.docx是Word软件默认存储文件类型&#xff0c; .docx正在逐步取代.doc。…

QT和网络调试助手之间的UDP通信

文章目录一、背景二、实现过程简述UDP协议工作原理及编程模型UDP 接收端UDP 发送端运行UDP接收端和发送端运行UDP发送端发送数据给网络调试助手一、背景 之前一篇博客实现了两个网络调试助手之间的UDP通信。 文章链接&#xff1a;在MacOS上实现两个网络调试助手的UDP通信测试…

西电数据库实验-学生学籍管理系统 数据库设计

西电数据库实验-学生学籍管理系统 数据库设计 文章目录西电数据库实验-学生学籍管理系统 数据库设计需求分析实体集联系集概念结构设计逻辑结构设计实体集department(id‾,name)department(\underline {id},name)department(id​,name)instructor(id‾,name,dept_id)instructor…

如何翻译英文音频?看完你就学会了

在平时的工作中&#xff0c;相信大家应该都会遇到一些不太熟悉的英文或者其它外文的语言&#xff0c;这给我们的生活带来了诸多烦恼&#xff0c;那遇到这种情况&#xff0c;我们应该怎么办呢&#xff1f;其实很简单&#xff0c;我们可以利用一些软件来将这些语言转换成中文&…

SpringCloud系列(三)Nacos 注册中心的搭建及服务发现

在 SpringCloud 系列&#xff08;一&#xff09;里面介绍了 Eureka 注册中心主要用来做什么&#xff0c;如何搭建并进行了简单的测试&#xff0c;但是 Eureka 有诸多不便之处&#xff0c;如需要配合 SpringCloud config 来实现&#xff0c;我们还需要再写一个 Module 进行启动等…

Python安装库教程(解决安装报错)

Python库安装以及报错解决方法 本文章以jieba库和wordcloud库的安装来演示安装以及安装过程报错的解决方法 一. 使用Pycharm安装 1. 没有创建项目&#xff08;创建了直接去往第二步&#xff09; 选择下一步 创建完成 2. 已经创建项目 3. 安装python库报错 如果显示这个就表示…

融云全球社交泛娱乐洞察,老资格的「游戏社交」还有哪些想象空间

一切应用都将社交化。关注【融云全球互联网通信云】回复【融云】抽取高颜值大容量高端可乐保温杯哦~ 融入社交能力&#xff0c;创造增长奇迹。激活用户在不同场景的社交需求&#xff0c;让各类应用焕发出了新的生命力&#xff0c;也让“社交X”成为出海最大的浪。 《2022 社交…

VMware ESXi 8.0 SLIC Unlocker, 集成网卡驱动和 NVMe 驱动

发布 ESXi 8.0 集成驱动版&#xff0c;在个人电脑上运行企业级工作负载 请访问原文链接&#xff1a;VMware ESXi 8.0 SLIC & Unlocker, 集成网卡驱动和 NVMe 驱动&#xff0c;查看最新版。原创作品&#xff0c;转载请保留出处。 作者主页&#xff1a;www.sysin.org 发布 …

MYSQL练习题:报告系统状态的连续日期

题目&#xff1a;报告系统状态的连续日期 系统 每天 运行一个任务。每个任务都独立于先前的任务。任务的状态可以是失败或是成功。 编写一个 SQL 查询 2019-01-01 到 2019-12-31 期间任务连续同状态 period_state 的起止日期&#xff08;start_date 和 end_date&#xff09;。…

Spark系列之Spark的数据倾斜

title: Spark系列 第九章 Spark的数据倾斜 9.1 Spark调优概述 ​ 有的时候&#xff0c;我们可能会遇到大数据计算中一个最棘手的问题——数据倾斜&#xff0c;此时 Spark 作业的性能会比期望差很多。数据倾斜调优&#xff0c;就是使用各种技术方案解决不同类型的数据倾斜问题…

安装TensorRT

安装TensorRT 安装可以查看官方文档&#xff1a;Installation Guide :: NVIDIA Deep Learning TensorRT DocumentationThis NVIDIA TensorRT 8.5.1 Installation Guide provides the installation requirements, a list of what is included in the TensorRT package, and ste…

性能测试 之进程上下文切换问题分析

安装监控平台 通过 grafana(前端) prometheus(时序数据库) node_exporter(硬件资源收集器) 安装监控系统 node_exporter 安装在被压测的服务器上&#xff0c;因为我本机已经安装过&#xff0c;所以只需要通过find 命令找到node所在位置&#xff0c;执行 ./node_exporter 启…

VUE 常用炫酷动画库(拿来即用系列)

目录 打字机效果Vue动画库 代码示例 效果 炫酷背景动画库 代码示例 效果 打字机效果Vue动画库 npm install vue-typical 代码示例 <template><div><v-typicalclass"blink":steps"[Hello, 1000, Hello World !, 600, Hello World ! &#…

【SpringCloud】08 分布式事务 seata

文章目录seata一、seata服务端的搭建&#xff08;1&#xff09;下载seata服务端&#xff08;2&#xff09;解压&#xff08;3&#xff09;配置seata的存储方式&#xff08;4&#xff09;创建seata数据库并导入相关表&#xff08;5&#xff09;把mysql的驱动jar放入到seata服务的…

如何使用ebpf kprobe探测内核函数

前言 在这之前, 我也曾使用过ebpf来改造我自己的项目, 最后也成功引入了项目, 有兴趣的同学可以查看此文章. 如何用ebpf开启tun网卡的TUNSETSTEERINGEBPF功能_我不买vip的博客-CSDN博客 但是该文章里并没有实质性的内容, 比如ebpf的map未曾涉及, 探测类型也未曾涉及, 只是一个空…