本文示例代碼已上傳至我的
Github
倉庫https://github.com/CNFeffery/DataScienceStudyNotes
1 簡介
大家好我是費老師,pandas
在前不久更新的2.2
版本中,針對Series
對象新增了case_when()
方法,用於實現類似SQL
中經典的CASE WHEN
語句功能,今天的文章中,我們就來get其具體使用方法~
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
值序列,譬如下面的例子:
更靈活的方式,是將條件寫作可執行函數,譬如lambda
函數,進而引用自身實現靈活的條件判斷:
函數式條件,在針對數據框進行鏈式分析的過程中,可以很靈活的基於上一步的臨時計算狀態,進行條件賦值操作,譬如(示例數據及代碼見文章開頭倉庫地址):
更多有關case_when()
方法的介紹,請移步官方文檔:https://pandas.pydata.org/docs/reference/api/pandas.Series.case_when.html
以上就是本文的全部內容,歡迎在評論區與我進行討論~