中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在python中利用lambda函數替換for循環

發布時間:2021-05-16 19:10:05 來源:億速云 閱讀:1570 作者:Leah 欄目:開發技術

這篇文章給大家介紹如何在python中利用lambda函數替換for循環,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

場景如下:

現在有一個dataframe,其中一列為score,值從0-100,

df:

score

98

88

37

68

86

33

現在需要增加一列level,給這些分數分類,90分以上為A,60-90為B,60以下為C。

常用的方法肯定是使用for循環,對每一行進行處理。

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的匿名函數:lambda函數

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)

python可以做什么

Python是一種編程語言,內置了許多有效的工具,Python幾乎無所不能,該語言通俗易懂、容易入門、功能強大,在許多領域中都有廣泛的應用,例如最熱門的大數據分析,人工智能,Web開發等。

關于如何在python中利用lambda函數替換for循環就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

八宿县| 南召县| 额济纳旗| 洱源县| 突泉县| 阜新市| 肥城市| 乾安县| 滦南县| 军事| 兴安县| 仙居县| 海南省| 土默特右旗| 龙游县| 江都市| 金阳县| 永泰县| 贵定县| 牙克石市| 壶关县| 石城县| 偏关县| 吉安市| 仁化县| 塘沽区| 依兰县| 丹东市| 枞阳县| 铁力市| 通化市| 明星| 定结县| 望江县| 乌拉特前旗| 九台市| 奎屯市| 永仁县| 孟津县| 金昌市| 沅陵县|