matlab中sum对矩阵求和
设M为一个矩阵,那么:
sum(M)是以矩阵M的每一列为对象,对每一列的数据分别求和。
sum(M,2)是以矩阵的每一行为对象,对每一行的数据分别求和。
sum(M(:))是将矩阵中的所有元素相加求和。
M(:,1)是求矩阵的第一列
M(1,:)是求矩阵的第一行
如果M= [1, 2 ,3 ,4, 5;
1, 2, 3, 4, 5];
a=sum(M) 表示对整个矩阵按列求和
a= [2 4 6 8 10]
sum(M(1:t,:),1) 表示对矩阵前1到t行按列求和
b=sum(M,2) 表示对整个矩阵按行求和
b=[15;15];
d=sum(M(:,1:3),2) 表示对矩阵前1到3列按行求和
d = [6;6]
c=sum(M(: )) 表示整个矩阵整体求和
c =30
size用法
size():获取矩阵的行数和列数
(1)s=size(A),
当只有一个输出参数时,返回一个行向量,该行向量的第一个元素时矩阵的行数,第二个元素是矩阵的列数。
(2)[r,c]=size(A),
当有两个输出参数时,size函数将矩阵的行数返回到第一个输出变量r,将矩阵的列数返回到第二个输出变量c。
(3)size(A,n)如果在size函数的输入参数中再添加一项n,并用1或2为n赋值,则 size将返回矩阵的行数或列数。其中r=size(A,1)该语句返回的时矩阵A的行数, c=size(A,2) 该语句返回的时矩阵A的列数。
Matlab中size和length函数的区别:
length是求某一矩阵所有维的最大长度。如:x是一维向量,那么length(x)就是求向量的长度;但size(x)仍然输出行列数。
另外,如果参数变量x是向量,则返回其长度;如果参数变量是非空矩阵则length()=max(size()).
如
size()是求矩阵各维的长度,例如:size(x,2)代表求矩阵x第2维长度, 即第二行中的列数:
https://blog.csdn.net/qq_36652619/article/details/83380474
https://blog.csdn.net/xueluowutong/article/details/85059285