Función REDUCE

Esta función reduce una matriz a un resultado acumulado mediante la aplicación de una función LAMBDA a cada valor.

Ejemplo de uso

REDUCE(5; A1:A3; LAMBDA(acumulador; valor_actual; acumulador+valor_actual))

REDUCE(2; A1:A3; LAMBDA(acumulador; valor_actual; acumulador*valor_actual))

Sintaxis

REDUCE(valor_inicial; matriz_o_intervalo; LAMBDA)

  • valor_inicial: el valor inicial de acumulador.
  • matriz_o_intervalo: matriz o intervalo que se va a reducir.
  • LAMBDA: una función LAMBDA que se aplica a cada valor de matriz_o_intervalo para reducirlo.
  • Sintaxis: LAMBDA(nombre1; nombre2; expresión_fórmula)
  • Requisitos:
    • La función LAMBDA debe tener exactamente dos argumentos nombre y una expresión_fórmula que use esos nombres. Al aplicar la función LAMBDA, el argumento nombre1 se resuelve en el valor actual del acumulador y el argumento nombre2 se resuelve en el valor_actual de la matriz_o_intervalo. El acumulador se actualiza en cada paso al valor intermedio obtenido en el paso anterior. Ejemplo de operación de multiplicación sencilla

Notas

  • La función LAMBDA enviada debe aceptar exactamente dos argumentos nombre. Si no, se devuelve un error #N/A. Estos argumentos se corresponden con acumulador y valor_actual, en ese orden. Por aclarar:
    • nombre1: se resuelve con el valor actual del acumulador.
    • nombre2: se resuelve con el valor_actual de la matriz de entrada.
  • El acumulador se inicializa con el valor_inicial y se actualiza en cada paso al valor intermedio obtenido en el paso anterior.
  • Mientras se aplique LAMBDA, el valor_actual de la matriz de entrada aparece fila por fila.
  • En este caso, una función con nombre puede pasar por parámetro LAMBDA y comportarse como una función LAMBDA. Más información sobre las funciones con nombre
    • La función con nombre debe utilizar la sintaxis LAMBDA de REDUCE y tener definidos exactamente dos marcadores de posición de argumentos.
    • La función con nombre no debe ir seguida de un paréntesis.

Ejemplos

Multiplicación sencilla

Devuelve el producto de todos los elementos de A1:A3 y de valor_inicial.

Datos de ejemplo:

 

A

1

3

2

2

3

4

Ejemplo: =REDUCE(5; A1:A3; LAMBDA(acumulador; valor_actual; acumulador*valor_actual))

Cómo funciona:

De entrada, el acumulador es igual a 5

1. Procesando la celda A1:

acumulador= 5

valor_actual= 3

Después de procesar la celda A1:

acumulador= (valor devuelto de LAMBDA)= 5*3= 15

2. Procesando la celda A2:

acumulador= 15

valor_actual= 2

Después de procesar la celda A2:

acumulador= (valor devuelto de LAMBDA)= 15*2= 30

3. Procesando la celda A3:

acumulador= 30

valor_actual= 4

Después de procesar la celda A3:

acumulador= (valor devuelto de LAMBDA)= 30*4= 120

Resultado:

120

Suma si el precio es superior o igual a 20 $

Añade todos los precios que sean superiores o iguales a 20 $.

Datos de ejemplo:

 

A

1

50 $

2

10 $

3

30 $

4

20 $

Ejemplo: =REDUCE(0; A1:A4; LAMBDA(acumulador; precio; si(precio>=20; acumulador + precio; acumulador)))

Resultado:

100 $

Usa una función con nombre como función LAMBDA

Devuelve el precio final después de aumentarlo en un determinado porcentaje cada periodo.

Crear una copia

Datos de ejemplo:

 

A

B

C

1

2022

10 %

Precio inicial:

2

2023

5 %

100 $

3

2024

5 %

 

4

2025

10 %

 

Ejemplo: =REDUCE(C2;B1:B4;PRICE_INCREASE)

Función con nombre: PRICE_INCREASE es una función con nombre que genera el resultado de aumentar el valor del porcentaje de la columna B.

Definición de la fórmula: =acumulador+acumulador*celda, donde acumulador y celda son marcadores de posición de argumentos definidos para PRICE_INCREASE

Resultado:

133,4

Usa una función con nombre como función LAMBDA con un conjunto de datos bidimensional

Consulta la lista de empleados únicos del trimestre manteniendo el mismo orden por fila.

Crear una copia

Datos de ejemplo:

 

A

B

C

   

1

 

T1

T2

T3

T4

2

2020

Juan

Adrián

Estefanía

Adrián

3

2021

Pedro

Mariano

Juan

Cecilia

4

2022

Estefanía

Miguel

Pedro

Adrián

Función con nombre: ADD_IF_NOT_PRESENT es una función con nombre que añade un valor de cadena determinado a una matriz de valores.

Definición de la función: =SI(CONTAINS(valor_nuevo; valores_existentes); valores_existentes {valores_existentes; valor_nuevo}), donde valores_existentes y valor_nuevo son marcadores de posición de argumentos definidos para ADD_IF_NOT_PRESENT, en ese orden. CONTAINS es otra función con nombre.

Ejemplo: =REDUCE({B2}; B2:E4; ADD_IF_NOT_PRESENT)

Resultado:

Juan

Adrián

Estefanía

Pedro

Mariano

Cecilia

Miguel

Errores frecuentes

La función LAMBDA enviada no tiene exactamente dos argumentos nombre

Si la función LAMBDA no tiene dos argumentos nombre, se produce este error:

"Número incorrecto de argumentos para LAMBDA. Se esperaban tres argumentos, pero se han obtenido dos".

Ejemplo: =REDUCE(5; C1:C4; LAMBDA(valor_actual; valor_actual+1))

En este ejemplo, LAMBDA solo tiene un argumento nombre cuando se necesitan dos.

El último parámetro de REDUCE no era una LAMBDA

Si el último parámetro de la función REDUCE no era una función LAMBDA, se produce este error:

“El argumento debe ser una LAMBDA”.

Ejemplo: =REDUCE(5; C1:C4; 3)

En este ejemplo, la última función es 3, no LAMBDA.

La LAMBDA enviada a REDUCE no es correcta

Si uno o varios argumentos nombre no son válidos, se produce este error:

“El argumento 1 de la función LAMBDA no es un nombre válido”.

Ejemplo: =REDUCE(5; C1:C4; LAMBDA(C1; v; C1+v))

En este ejemplo, C1 no es un nombre válido porque entra en conflicto con un intervalo.

Funciones relacionadas

  • Función LAMBDA: esta función te permite generar y devolver una función personalizada con un conjunto de nombres y una expresión_fórmula que los utiliza.
  • Función MAP: esta función asigna cada valor de las matrices a un nuevo valor.
  • Función BYROW: esta función agrupa una matriz por filas.
  • Función BYCOL: esta función agrupa una matriz por columnas.
  • Función SCAN: analiza una matriz y genera valores intermedios.
  • Función MAKEARRAY: esta función crea una matriz calculada de dimensiones especificadas.
  • Crear y usar funciones con nombre: esta función te permite crear y almacenar funciones personalizadas de forma similar a LAMBDA.
true
Visita el centro de aprendizaje

¿Usas productos de Google, como Documentos de Google, en el trabajo o en clase? Prueba estos eficientes consejos, tutoriales y plantillas. Consulta cómo trabajar con archivos de Office sin instalar Office, crear calendarios de equipo y planes de proyectos dinámicos, organizar automáticamente tu bandeja de entrada y muchas cosas más.

Búsqueda
Borrar búsqueda
Cerrar búsqueda
Aplicaciones de Google
Menú principal