Суммирование элементов матрицы в MATLAB

  1. Суммируйте элементы матрицы, используя цикл в MATLAB
  2. Суммируйте элементы матрицы, используя функцию sum() в MATLAB

В этом руководстве будет обсуждаться, как суммировать элементы матрицы с помощью цикла и функции sum() в MATLAB.

Суммируйте элементы матрицы, используя цикл в MATLAB

В матрице существует два вида индексации; один - это индексирование строк и столбцов, при котором мы должны указать номер строки и столбца для доступа к элементу, присутствующему в матрице, второй - это линейное индексирование, при котором мы можем получить доступ к элементу, используя только его линейный индекс. Например, см. Код ниже.

m = [2 6 1; 17 19 18]
row_col_index = m(2,3)
linear_index = m(6)

Выход:

m =

     2     6     1
    17    19    18


row_col_index =

    18


linear_index =

    18

В приведенном выше коде мы обращаемся к последнему элементу матрицы, используя оба вида индексации. При линейной индексации элементы присутствуют в матрице, начиная с первого столбца. Итак, если вы отсчитываете от первого столбца, последний элемент присутствует в шестом индексе. Чтобы перебрать матрицу с использованием индексации строк и столбцов, вам потребуется два цикла, но в случае линейной индексации вам потребуется только один цикл. Например, давайте переберем матрицу, используя линейную индексацию и найдя сумму всех элементов. См. Код ниже.

m = [2 6 1; 17 19 18];
total = 0;
for i = 1:numel(m)
    total = total + m(i);
end
sumOfElements = total

Выход:

sumOfElements =

    63

Выше мы использовали функцию numel(), чтобы получить общее количество элементов, присутствующих в данной матрице, и вычислили сумму всех элементов, присутствующих в матрице, используя цикл и линейную индексацию.

Суммируйте элементы матрицы, используя функцию sum() в MATLAB

Чтобы найти сумму всех элементов матрицы, вы можете использовать функцию sum(). В случае матрицы вы должны использовать функцию sum() два раза, один для строк и один для столбцов, но в случае вектора вы должны использовать sum() только один раз. . Например, давайте найдем сумму всех элементов, присутствующих в данной матрице. См. Код ниже.

m = [2 6 1; 17 19 18];
sumOfElements = sum(sum(m))

Выход:

sumOfElements =

    63

Вы также можете выбрать размеры матрицы, по которой вы хотите вычислить сумму. Посетите эту ссылку, чтобы узнать больше о функции sum().

Сопутствующая статья - MATLAB Matrix

  • MATLAB итерация по матрице
  • MATLAB создает случайную матрицу