python 用lambda函数替换for循环的方法


Posted in Python onJune 09, 2018

场景如下:

现在有一个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 用lambda函数替换for循环的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python基本数据类型详细介绍
Mar 11 Python
在Python中使用cookielib和urllib2配合PyQuery抓取网页信息
Apr 25 Python
python使用PyCharm进行远程开发和调试
Nov 02 Python
Python爬虫实现全国失信被执行人名单查询功能示例
May 03 Python
python机器学习之神经网络实现
Oct 13 Python
使用python判断你是青少年还是老年人
Nov 29 Python
pyqt5 使用label控件实时显示时间的实例
Jun 14 Python
详解python中的index函数用法
Aug 06 Python
python实现代码统计程序
Sep 19 Python
python tornado修改log输出方式
Nov 18 Python
使用OpenCV实现道路车辆计数的使用方法
Jul 15 Python
Python为何不支持switch语句原理详解
Oct 21 Python
python dataframe常见操作方法:实现取行、列、切片、统计特征值
Jun 09 #Python
python pandas 如何替换某列的一个值
Jun 09 #Python
pandas 对series和dataframe进行排序的实例
Jun 09 #Python
python pandas库中DataFrame对行和列的操作实例讲解
Jun 09 #Python
python pandas修改列属性的方法详解
Jun 09 #Python
numpy判断数值类型、过滤出数值型数据的方法
Jun 09 #Python
python中使用iterrows()对dataframe进行遍历的实例
Jun 09 #Python
You might like
PHP之短标签开启设置
2013/06/17 PHP
PHP判断文章里是否有图片的简单方法
2014/07/26 PHP
PHP用正则匹配form表单中所有元素的类型和属性值实例代码
2017/02/28 PHP
PHP 网站修改默认访问文件的nginx配置
2017/05/27 PHP
PHP+ajax实现二级联动菜单功能示例
2018/08/10 PHP
Juqery Html(),append()等方法的Bug解决方法
2010/12/13 Javascript
jquery ajax例子返回值详解
2012/09/11 Javascript
JS实现div内部的文字或图片自动循环滚动代码
2013/04/19 Javascript
js的回调函数详解
2015/01/05 Javascript
js实现网页右上角滑出会自动消失大幅广告的方法
2015/02/27 Javascript
CSS javascript 结合实现悬浮固定菜单效果
2015/08/23 Javascript
Jquery promise实现一张一张加载图片
2015/11/13 Javascript
js面向对象实现canvas制作彩虹球喷枪效果
2016/09/24 Javascript
js实现返回顶部效果
2017/03/10 Javascript
Angular服务Request异步请求的实例讲解
2018/08/13 Javascript
layui表单验证select下拉框实现验证的方法
2019/09/05 Javascript
[02:41]辉夜杯现场一家三口 “我爸玩风行 我玩血魔”
2015/12/27 DOTA
Python中利用Scipy包的SIFT方法进行图片识别的实例教程
2016/06/03 Python
python 创建弹出式菜单的实现代码
2017/07/11 Python
使用Pyhton集合set()实现成果查漏的例子
2019/11/24 Python
使用PyQt5实现图片查看器的示例代码
2020/04/21 Python
Python实现粒子群算法的示例
2021/02/14 Python
详解pandas apply 并行处理的几种方法
2021/02/24 Python
HTML5中的新元素介绍
2008/10/17 HTML / CSS
乔丹诺(Giordano)酒庄德国官网:找到最好的意大利葡萄酒
2017/12/28 全球购物
美国最佳在线航班预订网站:LookupFare
2019/03/26 全球购物
护理专业个人求职简历的自我评价
2013/10/13 职场文书
办公室文秘岗位职责
2013/11/15 职场文书
租房协议书范本
2014/04/09 职场文书
2014年安全生产目标责任书
2014/07/23 职场文书
2014年辅导员工作总结
2014/11/18 职场文书
高考学习决心书
2015/02/04 职场文书
小学班主任个人总结
2015/03/03 职场文书
辣妈辣妹观后感
2015/06/10 职场文书
《没有任何借口》读后感:完美的执行能力
2020/01/07 职场文书
CSS实现五种常用的2D转换
2021/12/06 HTML / CSS