通过对数组中的每个值应用 LAMBDA 函数来扫描数组,并返回包含每个中间值的数组。
语法
SCAN(initial_value, array, lambda)参数
initial_value必填
累加器的初始值。
array必填
要扫描的数组。
lambda必填
一个包含两个参数的 LAMBDA 函数:累加器和当前值。
SCAN 函数遍历数组并将 LAMBDA 函数应用于每个元素,同时维护一个在每一步都会更新的累加器。它返回一个与输入大小相同的数组,展示计算的演变过程。
=SCAN(0, {1, 2, 3}, LAMBDA(a, v, a+v))→{1, 3, 6}从 0 开始计算数组 {1, 2, 3} 的运行总计。
定义初始值
设置计算的起点(例如,求和时设为 0)。
编写 LAMBDA 函数
创建一个接收两个参数的 LAMBDA:累加器和当前数组元素。
SCAN 返回所有中间结果的数组,而 REDUCE 仅返回最终的累加值。