matlab 中矩阵怎么求所有元素的和

作者&投稿:语美 (若有异议请与网页底部的电邮联系)
matlab 如何求一个矩阵所有元素的绝对值的和~

求一个矩阵A所有元素的绝对值的和的实现方法为:在matlab命令窗口输入代码: sum(sum(abs(A))),其中用到的两个函数的功能如下:
1、abs(A) 求矩阵A中每个元素的绝对值
2、sum(A) 沿着矩阵A的第一个维度计算元素之和。当A为向量时,得到所有元素之和;当A为二维矩阵时,将沿着列求和,即得到一个行向量。
下面进行一个实例演示:
1、打开matlab软件,在命令窗口输入:A = [ 1 2 3;-1 -2 -3;1 0 -1],显示结果如下图所示:

2、接着,输入代码:sum(sum(abs(A))),根据sum函数的说明,对于二维矩阵,使用两次sum函数才能得到所有元素的和。此时得到结果14,即为上面示例矩阵A的所有元素的绝对值之和,如下图所示:

可先求列和,然后将列和组成的向量转置,最后再对转置后的向量求列和。例对矩阵A求所有元素的和,可:
sum((sum(A))')。
例:
A

=
16


3


2

13
5

10

11


8
9


6


7

12
4

15

14


1
>>
sum((sum(A))')
ans
=
136
matlab中小数取整的函数大约有四个:floor、ceil、round、fix
例如:若
A
=
[-2.0,
-1.9,
-1.55,
-1.45,
-1.1,
1.0,
1.1,
1.45,
1.55,
1.9,
2.0]
floor:朝负无穷方向靠近最近的整数,
floor(A)
ans
=
-2

-2

-2

-2

-2


1


1


1


1


1


2

可先求列和,然后将列和组成的向量转置,最后再对转置后的向量求列和。例对矩阵A求所有元素的和,可:
sum((sum(A))')。
例:
A =
16 3 2 13
5 10 11 8
9 6 7 12
4 15 14 1
>> sum((sum(A))')
ans =
136

可先求列和,然后将列和组成的向量转置,最后再对转置后的向量求列和。例对矩阵A求所有元素的和,可:

sum((sum(A))')。

例:

A   =
16     3     2    13
5    10    11     8
9     6     7    12
4    15    14     1

>> sum((sum(A))')

ans =

136



其实不用那么麻烦的 有更好的方法:
eg:
A=[1 2 3;4 5 6]
sum(A(:))
即是求和所有元素

A为二维矩阵
所有元素的和sum(sum(A))

Angland Bigland Englate


平果县17191152325: matlab 如何求一个矩阵所有元素的绝对值的和 -
濮别欣泰: 求一个矩阵A所有元素的绝对值的和的实现方法为:在matlab命令窗口输入代码: sum(sum(abs(A))),其中用到的两个函数的功能如下: 1、abs(A) 求矩阵A中每个元素的绝对值 2、sum(A) 沿着矩阵A的第一个维度计算元素之和.当A为向量时,...

平果县17191152325: matlab 中矩阵怎么求所有元素的和
濮别欣泰: 可先求列和,然后将列和组成的向量转置,最后再对转置后的向量求列和.例对矩阵A求所有元素的和,可: sum((sum(A))'). 例: A = 16 3 2 13 5 10 11 8 9 6 7 12 4 15 14 1 >> sum((sum(A))') ans = 136

平果县17191152325: 如何求一个矩阵里的每一个元素的个数用Matlab求 -
濮别欣泰: 代码如下: a = [1 2 3; 1 2 4; 1 2 3]; b = unique(a); % 唯一的元素 for k = 1:length(b)c(k) = length(find(a(:)==b(k))); % 计算各元素的个数fprintf('%d的个数为:%d\n', b(k), c(k)); end

平果县17191152325: 在matlab中怎么求矩阵中大于某个数的元素个数,以及元素的总数如果矩阵A=[1 2 3 5 ; 3 5 3 2],那么其中大于3的元素个数,以及矩阵中一共有多少个元素 -
濮别欣泰:[答案] A=[1 2 3 5 ; 3 5 3 2] sum(sum(A>3)) [a,b]=size(A); a*b

平果县17191152325: MATLAB中如何求矩阵中所有元素与该元素所在的列的所有元素之和的比值,组成一个新的矩阵 -
濮别欣泰: 想了一下,想到2个方法 方法一:用循环 [m,n]=length(A) result=zeros(m,n) b=sum(A)%将A按列求和. for i=1:n c(:,i)=A(:,i)/b(i); end c 方法2: [m,n]=size(A) b=sum(A) b1=ones(m,1) b2=b1*b c=a./b2 方法3:将方法2改成一行命令 c=A./(ones(size(A,1),1)*sum(A)) 结果为

平果县17191152325: matlab中有没有什么命令可以让矩阵中所有元素相加啊 -
濮别欣泰: 比如您要求A矩阵中所有元素的和:A = 1 3 4 4 7 8 0 4 8sum(A(:))ans = 39即可.

平果县17191152325: matlab 如何对矩阵中前3行所有元素求和 -
濮别欣泰: >> a=[ 2 1 2 1 2 1 2 4 1 1 4 4 4 1 2 2] a = 2 1 2 1 2 1 2 4 1 1 4 4 4 1 2 2>> sum(sum(a(1:3,:))) % 前3行总和 ans = 25>>

平果县17191152325: MATLAB中如何求矩阵中所有元素与该元素所在的列的所有元素之和的比值,组成一个新的矩阵如A=[1 2;3 4]算出来结果应该是B=[0.25 0.33;0.75 0.67] -
濮别欣泰:[答案] 给你个参考 >> A=[1 2;3 4] A = 1 2 3 4 >> B=sum(A) B = 4 6 >> C=[A(:,1)/B(1),A(:,2)/B(2)] C = 0.2500 0.3333 0.7500 0.6667

平果县17191152325: Matlab中有没有直接求矩阵中各元素和的函数呀? -
濮别欣泰: 用sum()函数,sum()可求各个列的和,再sum一次即求出所有元素的和.(只有一行时,求行的值);例如: a=[1 2 3;4 5 6]; b=sum(a) b = 5 7 9 sum(b) ans=21 .

平果县17191152325: matlab怎么求矩阵所有元素的期望和方差?谢谢!!! -
濮别欣泰: 标准差 s = std(X(1:end),flag) flag=0,采用1/(N-1)的系数,flag=1,采用1/(N)的系数

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网