pandas中新增的case_when()方法

简介: pandas中新增的case_when()方法

1 简介

大家好我是费老师,pandas在前不久更新的2.2版本中,针对Series对象新增了case_when()方法,用于实现类似SQL中经典的CASE WHEN语句功能,今天的文章中,我们就来get其具体使用方法~

bae86e9cc160f875a9a3df2a5a22ef27.png

2 pandas中的case_when()新方法

首先请确保你的pandas版本大于等于2.2,在确保Python版本大于等于3.9的前提下,终端执行下列命令安装最新版本的pandas

pip install pandas -U

2.1 case_when()的使用

case_when()作为Series对象的方法,其参数非常简单只有一个caselist,用于定义条件映射规则,格式如[(条件1, 替代值1), (条件2, 替代值2), ...],最基础的用法下,每个条件为与目标Series长度相等的bool值序列,譬如下面的例子:

1f9877af65bd7f45be2f990df40078c5.png

更灵活的方式,是将条件写作可执行函数,譬如lambda函数,进而引用自身实现灵活的条件判断:

e745a559cb44d261b9827afe4701d3de.png

函数式条件,在针对数据框进行「链式分析」的过程中,可以很灵活的基于上一步的「临时计算状态」,进行条件赋值操作,譬如(示例数据及代码见文章开头仓库地址):

相关文章
|
4月前
|
数据采集 机器学习/深度学习 Python
【机器学习】数据清洗——基于Pandas库的方法删除重复点
【机器学习】数据清洗——基于Pandas库的方法删除重复点
220 1
|
4月前
|
人工智能 安全 数据挖掘
Pandas AI:Pandas与人工智能的结合,让你不再拘泥于如何使用pandas方法及处理语法
Pandas AI:Pandas与人工智能的结合,让你不再拘泥于如何使用pandas方法及处理语法
215 1
|
4月前
|
数据挖掘 索引 Python
在Pandas中通过时间频率来汇总数据的三种常用方法
在Pandas中通过时间频率来汇总数据的三种常用方法
101 0
|
4月前
|
SQL 索引 Python
Pandas Query 方法深度总结
Pandas Query 方法深度总结
|
19天前
|
SQL JSON 数据可视化
Pandas库常用方法、函数集合
Pandas库常用方法、函数集合
|
20天前
|
机器学习/深度学习 存储 数据挖掘
pandas常用字符串处理方法看这一篇就够了
pandas常用字符串处理方法看这一篇就够了
|
12月前
|
机器学习/深度学习 算法 物联网
时间序列的重采样和pandas的resample方法介绍
重采样是时间序列分析中处理时序数据的一项基本技术。它是关于将时间序列数据从一个频率转换到另一个频率,它可以更改数据的时间间隔,通过上采样增加粒度,或通过下采样减少粒度。在本文中,我们将深入研究Pandas中重新采样的关键问题。
110 1
|
4月前
|
Python
使用Python pandas的sort_values()方法可按一个或多个列对DataFrame排序
【5月更文挑战第2天】使用Python pandas的sort_values()方法可按一个或多个列对DataFrame排序。示例代码展示了如何按'Name'和'Age'列排序 DataFrame。先按'Name'排序,再按'Age'排序。sort_values()的by参数接受列名列表,ascending参数控制排序顺序(默认升序),inplace参数决定是否直接修改原DataFrame。
142 1
|
4月前
|
数据可视化 数据挖掘 C++
数据分析综合案例讲解,一文搞懂Numpy,pandas,matplotlib,seaborn技巧方法
数据分析综合案例讲解,一文搞懂Numpy,pandas,matplotlib,seaborn技巧方法
107 2