Matlab: sum的用法、每一行求和、repmat的用法、sum和repmat结合使用减少循环

您所在的位置:网站首页 matlab求矩阵中每行的最大值和最小值的区别和联系 Matlab: sum的用法、每一行求和、repmat的用法、sum和repmat结合使用减少循环

Matlab: sum的用法、每一行求和、repmat的用法、sum和repmat结合使用减少循环

2024-07-15 04:53| 来源: 网络整理| 查看: 265

偶尔会用到关于矩阵元素的求和,总结一下常用的

目录

1、向量求和

2、矩阵求和

(1)默认按列求和,得到一个行向量 

(2)求每一行的和

3、sum和repmat一起使用

(1)矩阵A中每一行的平方和

(2)repmat的基本用法

(3)高斯核的计算

1、向量求和

直接调用sum即可,得到所有元素的和

a = [1 3 5 7]; s = sum(a); 

2、矩阵求和

调用格式:

s = sum(A,dim); % dim = 1,按列求和;dim = 2,按行求和

(1)默认按列求和,得到一个行向量 

(2)求每一行的和

b = [1 3 5 7;2 4 6 8] s = sum(b,2); % 得到一个列向量

3、sum和repmat一起使用

结合repmat使用,可以节省一些for循环的运算,比如支持向量机中的核函数的表示(高斯核)

(1)矩阵A中每一行的平方和

A = [1 3 5 7;2 4 6 8]; s = sum(A.*A,2); % 对应元素点乘,再按行相加

(2)repmat的基本用法

% A可以是向量或矩阵

B = repmat(A,m,n); % 产生m行n列的A,并组成矩阵

(3)高斯核的计算 % A是m1行n列的矩阵;C是m行n列的矩阵 KA = exp(-(repmat(sum(A.*A,2),1,m)+repmat(sum(C.*C,2)',m1,1)-2*A*C')/(p^2)); % K(A,C)



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3