国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python 用lambda函數(shù)替換for循環(huán)的方法

2020-02-15 21:44:12
字體:
供稿:網(wǎng)友

場景如下:

現(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 pdlist = [98,88,37,68,86,33]df = pd.DataFrame(list, columns=['score']) # convert list to dataframedf['level'] = '' # add a columndef 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 dfdf = 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)容了,希望能給大家一個參考,也希望大家多多支持武林站長站。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 贵港市| 江门市| 清水河县| 任丘市| 彰武县| 德江县| 钟祥市| 砚山县| 松原市| 建瓯市| 闽清县| 宜川县| 长沙县| 绥芬河市| 达孜县| 乃东县| 临清市| 伊吾县| 道孚县| 广饶县| 滁州市| 长治县| 边坝县| 洛南县| 永春县| 河南省| 海丰县| 宣化县| 东阿县| 巨野县| 方城县| 当雄县| 电白县| 宜春市| 咸阳市| 定兴县| 金寨县| 苍山县| 富蕴县| 商丘市| 万年县|