python 用lambda函數(shù)替換for循環(huán)的方法
場景如下:
現(xiàn)在有一個dataframe,其中一列為score,值從0-100,
df:
score
98
88
37
68
86
33
現(xiàn)在需要增加一列l(wèi)evel,給這些分?jǐn)?shù)分類,90分以上為A,60-90為B,60以下為C。
常用的方法肯定是使用for循環(huán),對每一行進(jìn)行處理。
import pandas as pd list = [98,88,37,68,86,33] df = pd.DataFrame(list, columns=['score']) # convert list to dataframe df['level'] = '' # add a column def judgeLevel(df): for i in range(len(df)): if df.score.ix[i] < 60: df.level.ix[i] = 'C' elif df.score.ix[i] > 90: df.level.ix[i] = 'A' else: df.level.ix[i] = 'B' return df df = judgeLevel(df)
還有一種方法,是使用python的匿名函數(shù):lambda函數(shù)
import pandas as pd list = [98,88,37,68,86,33] df = pd.DataFrame(list, columns=['score']) df['level'] = '' # add a column def judgeLevel(df): if df['score'] < 60: return 'C' elif df['score'] > 90: return 'A' else: return 'B' df['level'] = df.apply(lambda r: judgeLevel(r), axis=1)
至于如何取舍,就由各位自行決定了,多學(xué)一點總不是壞處,對吧?
以上這篇python 用lambda函數(shù)替換for循環(huán)的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
python解釋模型庫Shap實現(xiàn)機器學(xué)習(xí)模型輸出可視化
Shap 是一個開源的 python 庫,用于解釋模型。它可以創(chuàng)建多種類型的可視化,有助于了解模型和解釋模型是如何工作的。在本文中,我們將會分享一些Shap創(chuàng)建的不同類型的機器學(xué)習(xí)模型可視化2021-11-11Python pandas RFM模型應(yīng)用實例詳解
這篇文章主要介紹了Python pandas RFM模型應(yīng)用,結(jié)合實例形式詳細(xì)分析了pandas RFM模型的概念、原理、應(yīng)用及相關(guān)操作注意事項,需要的朋友可以參考下2019-11-11Python操作dict時避免出現(xiàn)KeyError的幾種解決方法
這篇文章主要介紹了Python操作dict時避免出現(xiàn)KeyError的幾種解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09python實現(xiàn)經(jīng)典排序算法的示例代碼
這篇文章主要介紹了python實現(xiàn)經(jīng)典排序算法的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02python實現(xiàn)替換word中的關(guān)鍵文字(使用通配符)
今天小編就為大家分享一篇python實現(xiàn)替換word中的關(guān)鍵文字(使用通配符),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-02-02python中for循環(huán)輸出列表索引與對應(yīng)的值方法
今天小編就為大家分享一篇python中for循環(huán)輸出列表索引與對應(yīng)的值方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-11-11