Reduces an array to an accumulated value by applying a LAMBDA to each value and returning the total value in the accumulator.
=REDUCE([initial_value], array, lambda(accumulator, value))
The REDUCE function syntax has the following arguments and parameters:
[initial_value] Sets the starting value for the accumulator.
array An array to be reduced.
lambda A LAMBDA that is called to reduce the array. The LAMBDA takes two parameters:
accumulator The value totaled up and returned as the final result.
value The calculation applied to each element in the array.
Use the initial_value argument to set the starting value for the accumulator parameter. In Example 2, where you multiply the accumulator, set the value to 1 to avoid multiplying by 0.
Providing an invalid LAMBDA function or an incorrect number of parameters returns a #VALUE! error called "Incorrect Parameters".
Example 1: Sum the squared values
Enter the sample data into cells A1:C2, and then copy the formula into cell D4:
=REDUCE(, A1:C2, LAMBDA(a,b,a+b^2))
Example 2: Create a customized "PRODUCTIF" function to multiply only values greater than 50
Create a table named "Table2" with one column named "Nums" starting at cell E1. Copy the following formula into cell G2:
Example 3: Count only even values
Create a table named "Table4" with one column named "Nums" starting at cell D1. Copy the following formula into cell F2: