首页 > 自考资讯 > 高考百科

LAMBDA和它的兄弟们MAP

小条 2024-09-23

MAP:地图、绘图、制图

映射经常被用来描述函数MAP的功能,但我更喜欢用“顺序执行”来描述它。更正式地说,它是一种遍历。

=MAP (Array1, Array2 或LAMBDA, Array2 或LAMBDA, Array2 或LAMBDA.) MAP 中最后一个有效的参数必须是LAMBDA 表达式;它之前的所有参数都必须有。例如,启用四个参数,其中第四个是LAMBDA 表达式,第一个到第三个是数组。

首先,我们用一个简单的案例来说明一下MAP的“一次运行一个”功能。

为此,请将每个销售数据加5 并输入一个简单的数组公式。

=C2:C12+5 8ac7b715c7a34fa78427544eeb822a32~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1727656967&x-signature=JSjgTV14W%2FgU%2FuBDW0%2BXx%2BiNQCs%3D 请使用MAP:代替

=MAP(C2:C12,LAMBDA(x,x+5)) a2f9c5b582974ccf8b0f02a2def148b9~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1727656967&x-signature=U3D5vKFJo3oqvjrnDrjjt%2ByKmEs%3D 两个表达式的结果完全相同,但计算过程完全不同。

第一个公式将5 与每个数组中的每个元素相加,并且一次性完成。

第二个表达式中MAP 的第一个参数是数据区域,现在传递给LAMBDA 定义的参数x。

X=C2:C12

LAMBDA表达式x+5实际上相当于C2:C12+5,但是这个计算不是一朝一夕完成的,涉及到11次计算。

第一次:C2+5

第二次:C3+5

第三次:C4+5

……

即对范围内的单元格进行逐一加5的操作,最后将结果封装成数组。

累计总数

让我们用一个更直观的案例来解释“一次一步”。

=MAP(C2:C12,LAMBDA(x,SUM(C1:x))) 公式中唯一参数x 相当于C2:C12,SUM(C1:x) 相当于SUM(C1:C12)。

类似地,SUM 计算11 次,每次计算都保持C1 固定并每次执行x 的一个元素。

第一次:SUM(C1:C2)

第二次:SUM(C1:C3)

第三次:SUM(C1:C4)

……

755187834969486dbeb26609282aa638~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1727656967&x-signature=6QFCRecU%2BU4y%2FUfBYtwHl%2BOotfw%3D 累计总数

找到第一个实现销售目标的人

LAMBDA 系列函数通常用于创建支持更复杂操作的数组。让我用一个例子来解释一下。

在您的数据中搜索包含超过300 条销售记录的名称。

首先,结合MAP 和SUMIF 对每个人的销售额求和。

=MAP(B2:B12,C2:C12,LAMBDA(x,y,SUMIF(B1:x,x,C1:y))) 3ce9fa43b6434361962bf7a1a2b88446~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1727656967&x-signature=zbNKXrpm4E07FQjG2nT%2BKlXcTWA%3D 累计总计

据此,使用XLOOKUP查找300多个名字:

=XLOOKUP(TRUE,MAP(B2:B12,C2:C12,LAMBDA(x,y,SUMIF(B1:x,x,C1:y)))300,B2:B12) c31d34ad8e5b4c3cb75e53f9929fb8ac~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1727656967&x-signature=Ieb%2BzSBke%2F5HfPQ2GcH9%2F7v6Dm4%3D搜索第一个达到销售目标的人

版权声明:本文转载于网络,版权归作者所有。如有侵权,请联系本站编辑删除。

猜你喜欢