python数据分析的四大高级函数

匿名函数

  • 不需要使用def来定义函数
  • 没有具体的名称
  • 使用lambda来定义函数
  • 语法结构:lambda par1,par2,…parn:expression
实例
#冒号前面是参数,冒号后面是表达式,也是所要返回的结果
g = lambda x:x**2
g(2)

在这里插入图片描述

map函数

map()方法会将一个函数映射到序列的每一个元素上,生成新序列,包含所有函数返回值。 笼统的讲,序列里的每一个元素都被当做x变量,放到一个函数f(x)里,其结果是f(x1)、f(x2)、f(x3)…组成的新序列

  • map函数返回的是迭代器
  • 调用方法:
    map(function,list_input)
    function代表函数
    list_input 代表输入序列
实例
#定义一个列表
items = [1,2,3,4,5,6]
def f(x):
	return x**2
map(f,items)
list(map(f,items))

在这里插入图片描述

reduce函数

定义:
在迭代序列的过程中,先把前两个元素(只能两个)传给函数,函数加工后,然后把得到的结果和第三个元素作为两个参数传给函数。依次类推,就像求1-100累加和

  • reduce函数不是内置函数,所以要导入第三方库
  • reduce函数不可直接使用
  • reduce(function,iterable)
    function:代表函数
    iterable:序列
实例
from functools import reduce
def f(x,y):
	return x + y
items = [1,2,3,4,5,6,7,8,9,10]
result = reduce(f,items)
result
#求1-100累加和
items = range(1,101)
result = reduce(f,items)
result

在这里插入图片描述
在这里插入图片描述

filter函数

  • 用于过滤序列,过滤掉不符合条件的元素,返回有符合条件元素组成的序列
  • 将function依次作用于sequnce的每个item,即function(item),将返回值为True的item组成一个list/string/tuple(取决于sequnce的类型)
  • python3统一返回迭代器
实例
filter(lambda x:x%2==0,range(21))
list(filter(lambda x:x%2==0,range(21)))

在这里插入图片描述

items = [1,2,3,4,'3263','chen','-34.56',45.8]
list(filter(lambda x:1 if isinstance(x,int)else 0,items))

在这里插入图片描述
或者:

def int_num(x):
	if isinstance(x,int):
		return True
	else:
		return False
list(filter(int_num,items))

在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值