【发布时间】:2011-02-08 17:24:30
【问题描述】:
>> X = [0 1 2
3 4 5]
>> sum(X, 1)
ans =
3 5 7
sum(X, 1) 应该按照文档中的说明在1st 维度(row) 上求和:
S = SUM(X,DIM) 沿 尺寸 DIM。
但为什么它实际上是沿2nd 维度(列)求和?
【问题讨论】:
标签: matlab dimensions
>> X = [0 1 2
3 4 5]
>> sum(X, 1)
ans =
3 5 7
sum(X, 1) 应该按照文档中的说明在1st 维度(row) 上求和:
S = SUM(X,DIM) 沿 尺寸 DIM。
但为什么它实际上是沿2nd 维度(列)求和?
【问题讨论】:
标签: matlab dimensions
http://www.mathworks.com/access/helpdesk/help/techdoc/ref/sum.html
B = sum(A,dim) 沿 由标量指定的 A 的维度 暗淡。暗淡输入是一个整数值 从 1 到 N,其中 N 是 A 中的尺寸。将 dim 设置为 1 以 计算每列的总和,2 到 总和行等。
你的猜测和我的一样好。
【讨论】:
sum不是这样?
1 表示列, 根据http://www.mathworks.com/access/helpdesk/help/techdoc/ref/sum.html
B = sum(A,dim) 沿 由标量指定的 A 的维度 暗淡。 dim 输入是一个从 1 到 N 的整数值,其中 N 是 A中的尺寸。 将 dim 设置为 1 以计算每列的总和,将 2 设置为对行求和,等等。
【讨论】:
我认为这方面的 Matlab 文档非常清楚。它指出:
B = sum(A,dim) 沿标量 dim 指定的 A 维度求和。 dim 输入是一个从 1 到 N 的整数值,其中 N 是 A 中的维数。将 dim 设置为 1 可计算每列的总和,2 可计算行的总和,等等。
欢迎您认为 Matlab 是错误的,但它不会改变!
【讨论】:
S = SUM(X,DIM) sums along the dimension DIM. 仅此而已!
在我看来,它与其他一切都完全一致。
sum(A,dim) 求和沿维度暗淡的方向。
行被“向下”计数,所以sum(A,1) 总和为“向下”。列数“向右”,因此sum(A,2) 和“向右”相加。
另一种看法是sum(A,dim) 通过求和将维度dim 折叠为1。因此,沿维度 1 求和的 4x3 数组会折叠第一个维度,从而生成 1x3 数组。
【讨论】: