Main Content

sum

Suma de los elementos de un arreglo

Descripción

ejemplo

S = sum(A) devuelve la suma de los elementos de A en la primera dimensión del arreglo cuyo tamaño es superior a 1.

  • Si A es un vector, sum(A) devuelve la suma de los elementos.

  • Si A es una matriz, sum(A) devuelve un vector fila que contiene la suma de cada columna.

  • Si A es un arreglo multidimensional, sum(A) opera en la primera dimensión del arreglo cuyo tamaño es superior a 1 y trata los elementos como vectores. El tamaño de S en esta dimensión se convierte en 1, mientras que los tamaños de todas las demás dimensiones permanecen iguales que en A.

  • Si A es una tabla u horario, sum(A) devuelve una tabla de una fila que contiene la suma de cada variable. (desde R2023a)

ejemplo

S = sum(A,"all") devuelve la suma de todos los elementos de A.

ejemplo

S = sum(A,dim) devuelve la suma de la dimensión dim. Por ejemplo, si A es una matriz, sum(A,2) devuelve un vector columna que contiene la suma de cada fila.

ejemplo

S = sum(A,vecdim) suma los elementos de A basándose en las dimensiones que se especifican en el vector vecdim. Por ejemplo, si A es una matriz, sum(A,[1 2]) devuelve la suma de todos los elementos de A, puesto que todos los elementos de una matriz están incluidos en la parte del arreglo definida por las dimensiones 1 y 2.

ejemplo

S = sum(___,outtype) devuelve la suma con el tipo de datos especificado, usando cualquiera de los argumentos de entrada de las sintaxis anteriores. outtype puede ser "default", "double" o "native".

ejemplo

S = sum(___,nanflag) especifica si incluir u omitir valores NaN en A. Por ejemplo, sum(A,"omitnan") ignora los valores NaN al calcular la suma. De forma predeterminada, sum incluye valores NaN.

Ejemplos

contraer todo

Cree un vector y calcule la suma de sus elementos.

A = 1:10;
S = sum(A)
S = 55

Cree una matriz y calcule la suma de los elementos de cada columna.

A = [1 3 2; 4 2 5; 6 1 4]
A = 3×3

     1     3     2
     4     2     5
     6     1     4

S = sum(A)
S = 1×3

    11     6    11

Cree una matriz y calcule la suma de los elementos de cada fila.

A = [1 3 2; 4 2 5; 6 1 4]
A = 3×3

     1     3     2
     4     2     5
     6     1     4

S = sum(A,2)
S = 3×1

     6
    11
    11

Utilice un argumento de dimensión de vector para operar con partes específicas de un arreglo.

Cree un arreglo 3D cuyos elementos sean 1.

A = ones(4,3,2);

Para sumar todos los elementos de cada página de A, especifique las dimensiones en las que sumar (fila y columna) utilizando un argumento de dimensión de vector. Puesto que ambas páginas son una matriz de unos de 4 por 3, la suma de cada página es 12.

S1 = sum(A,[1 2])
S1 = 
S1(:,:,1) =

    12


S1(:,:,2) =

    12

Si corta A en la primera dimensión, puede sumar los elementos de las 4 páginas resultantes, que son matrices de 3 por 2 cada una.

S2 = sum(A,[2 3])
S2 = 4×1

     6
     6
     6
     6

Si corta en la segunda dimensión, la suma de cada página se realiza con una matriz de 4 por 2.

S3 = sum(A,[1 3])
S3 = 1×3

     8     8     8

Para calcular la suma de todas las dimensiones de un arreglo, puede especificar cada dimensión en el argumento de dimensión del vector o utilizar la opción "all".

S4 = sum(A,[1 2 3])
S4 = 24
Sall = sum(A,"all")
Sall = 24

Cree un arreglo de unos de 4 por 2 por 3 y calcule la suma en la tercera dimensión.

A = ones(4,2,3);
S = sum(A,3)
S = 4×2

     3     3
     3     3
     3     3
     3     3

Cree un vector de enteros de 32 bits y calcule la suma int32 de sus elementos especificando el tipo de salida como native.

A = int32(1:10);
S = sum(A,"native")
S = int32
    55

Cree una matriz que contenga valores NaN.

A = [1.77 -0.005 NaN -2.95; NaN 0.34 NaN 0.19]
A = 2×4

    1.7700   -0.0050       NaN   -2.9500
       NaN    0.3400       NaN    0.1900

Calcule la suma de la matriz excluyendo los valores NaN. Para columnas de matriz que contienen un valor NaN, sum se calcula con elementos que no son NaN. Para columnas de matriz que contienen todos los valores NaN, la suma es 0.

S = sum(A,"omitnan")
S = 1×4

    1.7700    0.3350         0   -2.7600

Argumentos de entrada

contraer todo

Arreglo de entrada, especificado como vector, matriz, arreglo multidimensional, tabla u horario.

  • Si A es un escalar, sum(A) devuelve A.

  • Si A es una matriz 0 por 0 vacía, sum(A) devuelve 0.

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | duration | table | timetable
Soporte de números complejos:

Dimensión en la que operar, especificada como escalar entero positivo. Si no especifica la dimensión, el valor predeterminado es la primera dimensión del arreglo de tamaño mayor que 1.

La dimensión dim indica la dimensión cuya longitud reduce a 1. El size(S,dim) es 1, mientras que los tamaños de todas las demás dimensiones se mantienen iguales.

Considere un arreglo de entrada bidimensional, A:

  • sum(A,1) opera en elementos sucesivos en las columnas de A y devuelve un vector fila de las sumas de cada columna.

    sum(A,1) column-wise computation.

  • sum(A,2) opera en elementos sucesivos en las filas de A y devuelve un vector columna de las sumas de cada fila.

    sum(A,2) row-wise computation.

sum devuelve A cuando dim es mayor que ndims(A) o cuando size(A,dim) es 1.

Tipos de datos: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Vector de dimensiones, especificado como vector de enteros positivos. Cada elemento representa una dimensión del arreglo de entrada. Las longitudes de la salida en las dimensiones operativas especificadas son 1, mientras que las demás se mantienen iguales.

Considere un arreglo de entrada de 2 por 3 por 3, A. En ese caso, sum(A,[1 2]) devuelve un arreglo de 1 por 1 por 3 cuyos elementos son las sumas de cada página de A.

sum(A,[1 2]) collapses the pages of a 2-by-3-by-3 array into a 1-by-1-by-3 array.

Tipos de datos: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Tipo de datos de salida, especificado como "default", "double" o "native". Estas opciones también especifican el tipo de datos con el que se ejecuta la operación.

outtypeTipo de datos de salida
"default"double, a menos que el tipo de datos de entrada sea single, duration, table o timetable, en cuyo caso la salida es "native"
"double"double, a menos que el tipo de datos sea duration, table o timetable, en cuyo caso "double" no es compatible
"native"Mismo tipo de datos que la entrada, a menos que el tipo de datos de entrada sea char, en cuyo caso "native" no es compatible, o a menos que el tipo de datos de entrada sea timetable, en cuyo caso el tipo de datos de salida es table

Condición de valor faltante, especificada como uno de estos valores:

  • "includemissing" o "includenan": incluyen los valores NaN en A al calcular la suma. Si un elemento de la dimensión operativa es NaN, el elemento correspondiente en S es NaN. "includemissing" y "includenan" presentan el mismo comportamiento.

  • "omitmissing" o "omitnan": ignoran los valores NaN en A y calculan la suma en menos puntos. Si todos los elementos de la dimensión operativa son NaN, el elemento correspondiente en S es 0. "omitmissing" y "omitnan" presentan el mismo comportamiento.

Capacidades ampliadas

Historial de versiones

Introducido antes de R2006a

expandir todo

Consulte también

| | |