python中的filter、map、reduce、apply用法总结

AD9361快速锁定实战:Profile寄存器配置与频率调谐算法解析 本文深入解析了AD9361射频收发器的快速锁定(Fast Lock)功能,重点阐述了其核心机制——Profile寄存器配置。通过剖析16字节Profile结构,详细讲解了频率调谐算法,包括LO_DIV、LO_INT、LO_FRAC等关键参数的计算,以及如何通过查表获取优化的环路滤波器参数。文章提供了完整的Python算法示例和FPGA实现要点,旨在帮助工程师实现毫秒级甚至微秒级的频率切换,满足跳频通信等高性能应用需求。 阅读详情

这几个函数在平时使用时不能立即想起来,而且它们之间区别不清,借该文做个总结。

OUTLINE

  • filter
  • map
  • reduce
  • apply
  • 总结

filter

功能: filter的功能是过滤掉序列中不符合函数条件的元素,当序列中要删减的元素可以用某些函数描述时,就应该想起filter函数。
调用: filter(function,sequence),function可以是匿名函数或者自定义函数,它会对后面的sequence序列的每个元素判定是否符合函数条件,返回TRUE或者FALSE,从而只留下TRUE的元素;sequence可以是列表、元组或者字符串
例子:

x = [1,2,3,4,5]
list(filter(lambda x:x%2==0,x)) # 找出偶数。python3.*之后filter函数返回的不再是列表而是迭代器,所以需要用list转换。
# 输出:
[2, 4]

map

功能: 求一个序列或者多个序列进行函数映射之后的值,就该想到map这个函数,它是python自带的函数,在python3.*之后返回的是迭代器,同filter,需要进行列表转换
调用: map(function,iterable1,iterable2),function中的参数值不一定是一个x,也可以是x和y,甚至多个;后面的iterable表示需要参与function运算中的参数值,有几个参数值就传入几个iterable
例子:

x = [1,2,3,4,5]
y = [2,3,4,5,6]
list(map(lambda x,y:(x*y)+2,x,y))
# 输出:
[4, 8, 14, 22, 32]

注:map中如果传入的几个序列的长度不一,那么会依据最短的序列进行计算。

reduce

功能: 对一个序列进行压缩运算,得到一个值。但是reduce在python2的时候是内置函数,到了python3移到了functools模块,所以使用之前需要 from functools import reduce
调用: reduce(function,iterable),其中function必须传入两个参数,iterable可以是列表或者元组
例子:

from functools import reduce
y = [2,3,4,5,6]
reduce(lambda x,y: x + y,y) # 直接返回一个值

其计算原理:
先计算头两个元素:f(2, 3),结果为5;
再把结果和第3个元素计算:f(5, 4),结果为9;
再把结果和第4个元素计算:f(9, 5),结果为14;
再把结果和第5个元素计算:f(14, 6),结果为20;
由于没有更多的元素了,计算结束,返回结果20。

apply

功能: 是pandas中的函数,应用对象为pandas中的DataFrame或者Series。大致有两个方面的功能:一是直接对DataFrame或者Series应用函数,二是对pandas中的groupby之后的聚合对象apply函数
调用: apply(function,axis),function表明所使用的函数,axis表明对行或者列做运算
例子:

import numpy as np
a = np.random.randint(low=0,high=4,size=(2,4))
data = pd.DataFrame(a)
data.apply(lambda x:x*10)
# 输出:

总结

1、filter和map都是python内置的函数,可以直接调用,reduce在functools模块,apply在pandas模块
2、要过滤删减序列用filter;要对多个序列做函数运算用map;在pandas里面直接调用apply,尤其是聚合对象,当然还有agg,日后补充。reduce用得少。

5V转±12V无变压器双boost电路 最近有个新项目,需要±10V范围的模拟量输出(非隔离),对于5V以下供电的控制板而言单端输出绝对没问题,可现在需要有正负输出,是少不了正负电源的,因此准备设计一个5V转±12V的电源,然后选择一个双向供电的运放,来实现单端模拟量信号向双向模拟量信号转换。 本文就来分享一下5V转±12V电源的设计。对于有类似双向电源需求的场合,大多使用变压器通过增加多个绕组来实现,而对于体积空间有要求的场合来讲,变压器实在是太大了,另外对于一些成熟的项目,变压器如果是已经设计好的,再额外增加绕组需要重新设计,费时费力。于是, 阅读详情

相关推荐

YOLOv11 损失函数进阶:SlideLoss 让小目标检测精度飙升

创建self.loss_fun = loss_fun # 基础损失函数(如BCEWithLogitsLoss)self.loss_coef = loss_coef # 损失系数# 计算滑动权重:根据预测与真实值的差异判断样本难度# 难度越高,权重越大该类在原有损失函数的基础上,通过diff计算样本预测与真实值的差异(差异越大,样本越难),进而生成动态权重,实现对难样本的重点学习。

m0_64661770的博客 181

什么是 MapFilterReduce

1.所谓函数式编程,是指代码中每一块都是不可变的,都由纯函数的形式组成。这里的纯函数,是指函数本身相互独立、互不影响,对于相同的输入,总会有相同的输出。 例如: 复制代码 def multiply_2(list): for index in range(0, len(list)): list[index] *= 2 return list listDemo = [1, 2, 3, 4, 5] print(multiply_2(listDemo)) 复制代码 运行结果: [2, 4, 6, 8, 10] mu

fan15945028042的博客 295

VisionMaster脚本调试(VS)

使用VS调试VisionMaster 脚本

yu_fujiang的专栏 3260

数组的高阶函数mapfilterreduce介绍

MapFilterReduce是ES6新的数组方法,可以高效帮助我们处理一些数组的计算,下面分别介绍: 1、Map()方法 作用:数组调用map方法,可以返回一个新的数组,新数组中的元素是对原数组中的元素按照传入的处理函数进行运算得到的,计算时按照原数组中元素的顺序由左至右依次计算。 参数1:function函数,该函数中定义了对原数组中的每个元素进行处理的方法,函数的参数: currentValue:当前处理的元素的值——必需 index:当前处理的元素的索引值——可选 arr:当前元素所属的数组对象

qq_43218707的博客 592

Python 匿名函数,map,reduce,filter

Python的匿名函数语法格式是:lambda [list] : 表达式 例如,我们要返回两个数相加的结果,可以定义一个函数 def sum_ab(a,b): return a+b i=sum_ab(3,5)#函数调用 print(i) 8 sum_ab=lambda a,b:a+b print(sum_ab) 使用 lambda 表达式可以省去定义函数的过程,让代码更加简洁,针对不需要多次复用的函数,使用 lambda 表达式可以在用完之后立即释放,提高程序执行的性能。而且还能配合.

qq_60320751的博客 314

高阶函数---mapreducefilter函数

  高阶函数 定义:一个函数可以作为参数传给另外一个函数,或者一个函数的返回值为另外一个函数(若返回值为该函数本身,则为递归) # 满足其一则为高阶函数。 def bar(): print("bar") def foo(func): func() print("foo") foo(bar) #返回值为函数 def bar(): print("in t...

Lzs1998的博客 463

filter函数|python

fiter函数简介及基本用法

qq_52166320的博客 1万+

python中的filtermapreduceapply用法

1. filter 功能:filter的功能是过滤掉序列中不符合函数条件的元素,当序列中要删减的元素可以用某些函数描述时,就应该想起filter函数。 调用:filter(function,sequence),function可以是匿名函数或者自定义函数,它会对后面的sequence序列的每个元素判定是否符合函数条件,返回TRUE或者FALSE,从而只留下TRUE的元素;seq...

dili8870的博客 227

python中的filtermapreduceapply

filter功能: filter的功能是过滤掉序列中不符合函数条件的元素,当序列中要删减的元素可以用某些函数描述时,就应该想起filter函数。 调用: filter(function,sequence),function可以是匿名函数或者自定义函数,它会对后面的sequence序列的每个元素判定是否符合函数条件,返回TRUE或者FALSE,从而只留下TRUE的元素;sequence可以是列表...

WangYouJin321的博客 284

python3中filtermapreduceapply、zip函数用法总结

文章目录filter函数filter高级用法map函数reduce函数zip函数apply函数总结 参考:https://blog.csdn.net/qq_32618817/article/details/80633848 参考:https://blog.csdn.net/blwinner/article/details/81944142 参考:https://blog.csdn.net/weixin_46649052/article/details/107048132 参考: https://blog.c

柳杰的博客 504

pythonapply_python中的filtermapreduceapply用法总结

参考链接:https://blog.csdn.net/qq_32618817/article/details/80633848这几个函数在平时使用时不能立即想起来,而且它们之间区别不清,借该文做个总结。OUTLINEfiltermapreduceapply总结filter功能: filter的功能是过滤掉序列中不符合函数条件的元素,当序列中要删减的元素可以用某些函数描述时,就应该想起filter函...

weixin_39602108的博客 154

python的几个内建函数:apply(),filter(),map(),reduce()

apply()函数: apply(func[,nkw][,kw]) 它的返回值就是func函数的返回值filter()函数:  filter(func,seq) 调用bool函数func,遍历处理序列中seq的每个元素。它的返回值是一个序列,其元素都是让func函数返回true值的原seq序列中的元素map()函数:def map(func,seq):    mapped_seq =

Technology+Communication+Fashion 1万+

Python 中的 lambda,filter,map,reduce,apply

Python 中的 lambda,filter,map,reduce,apply

追梦赤子心 2713

Pythonreducemapfilterapply、tuple函数

#_*_coding:UTF-8_*_ # tuple函数 def operat (x,y,z):     x=x+5     y=y+5     z=z+5     oper = [x,y,z]  #使用oper=[x,y,x]将这三个参数“打包”到一个名为oper的列表中     numbers = tuple(oper)  #用tuple()函数将列表装到元组中      

stven_king的专栏 2213

Python常用内置函数介绍【filter,map,reduce,apply,zip】

Python是一门很简洁,很优雅的语言,其很多内置函数结合起来使用,可以使用很少的代码来实现很多复杂的功能,如果同样的功能要让C/C++/Java来实现的话,可能会很头大,其实Python是将复杂的数据结构隐藏在内置函数中,你只要写出自己的业务逻辑,Python会自动得出你想要的结果。这方面的内置函数主要有,filter,map,reduce,apply,结合匿名函数,列表解析一起使用,功能更加强大.

杰瑞的专栏 1万+

pythonmap,reduce函数与pandas的apply,filter函数

1. python自带的applyfiltermap函数、reduce函数,很多情况下可以代替for循环: map(func,list),对list的每个元素分别执行func函数操作,显然func函数的参数就是单个元素。 reduce(func,list),对list的每个元素都执行func函数操作,最后汇总成一个结果。此处map不一样。 详细介绍参考: https://blog.cs...

yicunxuri的博客 1599

python中的t操作_Pythont特殊语法filter,map,reduce,apply使用方法

(1)lambdalambda是Python中一个很有用的语法,它允许你快速定义单行最小函数。类似于C语言中的宏,可以用在任何需要函数的地方。基本语法如下:函数名 = lambda args1,args2,...,argsn : expression例如:add = lambda x,y : x + yprint add(1,2)(2)filterfilter函数相当于一个过滤...

weixin_36012511的博客 335

python常用内置函数filtermapreduceapply、zip,enumerate,sorted以及列表解析

讲述常用内置函数之前,先介绍一个知识点:匿名函数lambda lambda函数: 讲究抛弃变量和状态,与标准方式声明的函数区别在于:不需要使用def语句,也不需要一个名字来引用它,起到函数速写的作用(通常只需要使用一次的函数,就可以用lambda表达式替代)。 语法: lambda arg : operation(arg) #operation相当于函数中的return函数 例子: func ...

guanhuazhan的博客 319

Delphi源码,图片转base64及base64转图片函数

function BaseImage(fn: string): string;function FileToBase64(FileName: string): string;function InmageToBase64(AImage:TImage): string;function Base64ToImage(const base64:string;AImage:TImage):Boolean;function Base64ToImageFile(const base64:string;AImagefile:string):Boolean;function CheckImgTypeBase64(abase64:string):string;

3Par存储详细配置手册(包括存储初始化配置部分)

我去年发过一个版本,这次这个版本的文档里修正了一些内容,文档前端又添加了一大段解释,如果对存储完全没概念的,可以先看看第二部分“3Par存储基本概念”,有一个了解以后再进行配置。另外我要说明的是,我放这个文档上来不是为了骗分,CSDN的分多了对我也没有什么价值,要了分也算是给自己写文档一点回报和认可,有人在评论里说我放的文档是其他内容,只是文档名改成了这个,这实在是很不责任的评论。

上一篇: 交叉验证——对数据集的划分
下一篇: diff函数
Just_do_it_2018
博客等级 码龄11年 124粉丝 36原创
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值