Почему сумма (X, 1) является суммой столбцов в MATLAB?

>> X = [0 1 2
        3 4 5]

>> sum(X, 1)

ans =

     3     5     7

sum(X, 1) должна суммироваться по размеру (строка) 1st в соответствии с документом:

S = СУММ (X, DIM) суммы вдоль размер DIM.

Но почему он фактически суммируется по размеру (t23) 2nd?

Ответы

Ответ 1

По-моему, это абсолютно согласуется со всем остальным.

sum(A,dim) суммируется вдоль направления размерности dim.

Строки подсчитываются "вниз", поэтому sum(A,1) суммируется "вниз". Столбцы считаются "вправо", поэтому sum(A,2) суммирует "вправо".

Другим способом взглянуть на это является то, что sum(A,dim) сворачивает измерение dim в 1, беря сумму. Таким образом, массив 4x3, суммированный по размеру 1, свертывает первое измерение, приводящее к массиву 1x3.

Ответ 2

http://www.mathworks.com/access/helpdesk/help/techdoc/ref/sum.html

B = сумма (A, dim) суммируется вдоль размерность А, заданная скалярным тусклый. Входной сигнал dim является целочисленным значением от 1 до N, где N - число размеры в A. Установите значение dim в 1 - вычислить сумму каждого столбца, от 2 до строки сумм и т.д.

Ваша догадка так же хороша, как моя.

Ответ 3

1 означает столбец, согласно http://www.mathworks.com/access/helpdesk/help/techdoc/ref/sum.html

B = сумма (A, dim) суммируется вдоль размерность А, заданная скалярным тусклый.     Вход dim - целое значение от 1 до N, где N - число размеры в A.      Установите dim в 1 для вычисления суммы каждого столбца, 2 для суммирования строк и т.д.

Ответ 4

Я думаю, что документация Matlab об этом довольно ясна. В нем указано:

B = sum (A, dim) суммируется вдоль размерности A, заданной скалярным dim. Вход dim - целое значение от 1 до N, где N - число измерений в A. Установите dim в 1 для вычисления суммы каждого столбца, 2 для суммирования строк и т.д.

Вы можете подумать, что Matlab ошибается, но это не изменится!