首页 > 代码库 > Matlab基础学习---------常用的数学函数实例学习

Matlab基础学习---------常用的数学函数实例学习

%% 求和函数
% 1、sum(x) 返回数组x所有值之和,x表示一个数组
% 实例
x=[1,2,3,4,5];
sum(x)
%结果:
% ans =
%     15

% 2、sum(X) 返回矩阵X各列元素之和的矩阵
X=[1,2,3;4,5,6;7,8,9]
sum(X)
%结果:
% X =
%      1     2     3
%      4     5     6
%      7     8     9
% ans =
%     12    15    18

% 3、cumsum(x) 返回一个数组x中元素累计和的向量
x
cumsum(x)
% 结果
% x =
%      1     2     3     4     5
% ans =
%      1     3     6    10    15

% 4、cumsum(X) 返回矩阵X各元素之和的矩阵
X
cumsum(X)
% 结果
% X =
%      1     2     3
%      4     5     6
%      7     8     9
% ans =
%      1     2     3
%      5     7     9
%     12    15    18

%% 乘积函数
% 1、prod(x) 返回数组x中各元素乘积,x为数组
x
prod(x)
%结果
% x =
%      1     2     3     4     5
% ans =
%    120

% 2、prod(X) 返回按照列向量的所有元素的乘积,组成一个行向量
X
prod(X)
% 结果
% X =
%      1     2     3
%      4     5     6
%      7     8     9
% ans =
%     28    80   162

%prod(A,dim) 给出dim维内的元素乘积  dim默认为1 有关dim介绍如下图
A=[1:3:7;2:3:8;3:3:9]
prod(A,1)
%结果
% ans =
%      6   120   504
prod(A,2)
%结果
% ans =
%     28
%     80
%    162
prod(A,3)
%结果
% ans =
%      1     4     7
%      2     5     8
%      3     6     9
prod(A,4)
%结果
% ans =
%      1     4     7
%      2     5     8
%      3     6     9

%3、cumprod(x) 返回一个x钟各元素累计乘积的向量
x=[2,2,2,2,2,2,2,2]
cumprod(x)
%结果
% x =
%      2     2     2     2     2     2     2     2
% ans =
%      2     4     8    16    32    64   128   256

%cumprod(A) 返回一个矩阵,列元素是A中列元素的累计乘积
A
cumprod(A)
%结果
% A =
%      1     4     7
%      2     5     8
%      3     6     9
% ans =
%      1     4     7
%      2    20    56
%      6   120   504

%cumprod(A,dim)  返回在dim维的累计乘积
A
cumprod(A,2)
%结果

%% 差分函数
% diff(x) 如果x=(x1,x2,x3...xn)则dif(x)=(x2-x1,x3-x2,x4-x3...xn-x(n-1))
x=[1 2 3 4 5 6]
diff(x)
%结果
% x =
%      1     2     3     4     5     6
% ans =
%      1     1     1     1     1

%diff(A) 在A第一维内计算相邻元素的差分
A
diff(A)
%结果
% A =
%      1     4     7
%      2     5     8
%      3     6     9
% ans =
%      1     1     1
%      1     1     1

%diff(x,k) 求出第K次差分,diff(x,2)相当于diff(diff(x))
x
diff(x,2)
%结果
% x =
%      1     2     3     4     5     6
% ans =
%      0     0     0     0

%diff(A,k,dim)在dim维求出第k次差分


%% 最大值和最小值
%max(x)返回x中的最大值,如果x为复数,则返回abs(x)的最大值
x
max(x)
y=[1 3 2+i 3+4i]
max(y)
%结果
% x =
%      1     2     3     4     5     6
% ans =
%      6
% y =
%    1.0000 + 0.0000i   3.0000 + 0.0000i   2.0000 + 1.0000i   3.0000 + 4.0000i
% ans =
%    3.0000 + 4.0000i

%max(A)返回一个矩阵,该矩阵元素包含矩阵A中第一维元素的最大值
A
max(A)
%结果
% A =
%      1     4     7
%      2     5     8
%      3     6     9
% ans =
%      3     6     9

%max(A,B) 返回与A,B同维数的矩阵,每个元素均为A,B矩阵相同位置元素的最大值
A
B=[1,2,3;4,5,6;7,8,9]
max(A,B)
%结果
% A =
% 
%      1     4     7
%      2     5     8
%      3     6     9
% B =
% 
%      1     2     3
%      4     5     6
%      7     8     9
% ans =
%      1     4     7
%      4     5     8
%      7     8     9

%最小值min的用法跟max相同

%% 简单统计命令
%mean(x)求向量x的算数平均值
%mean(x,dim)在dim维内计算
% median(x) %计算x中元素的中值
% median(A,dim)在dim维内计算中值
% std(x) 计算向量x中元素的标准差
%std(A,dim) 计算dim维标准差

%% 排序
%sort(x) 返回一个向量x的元素按照递增排序的向量,如果元素是复数,则按照abs(x)进行排序
x=[11 3 3 333 88]
sort(x)
%结果
% x =
%     11     3     3   333    88
% ans =
%      3     3    11    88   333

%[y,ind]=sort(x) 返回下标向量ind 即y=x(ind)
x
[y,ind]=sort(x)
%结果
% x =
%     11     3     3   333    88
% y =
% 
%      3     3    11    88   333
% ind =
%      2     3     1     5     4

%sort(A,dim) 对A中各列按照递增排序,在dim维
A=[7 8 9;4 5 6;1 2 3]
sort(A)
%结果
% A =
%      7     8     9
%      4     5     6
%      1     2     3
% ans =
%      1     2     3
%      4     5     6
%      7     8     9
[B,ind]=sort(A)
%结果
% B =
%      1     2     3
%      4     5     6
%      7     8     9
% ind =
%      3     3     3
%      2     2     2
%      1     1     1

%sortrows(A,col) 对矩阵各行按照递增排序,复数以abs为主angle为辅进行排序;
%               如果给出了col则根据指定的列数进行排序
A=[11,2,33;3,1,23]
sortrows(A)
%结果
% A =
%     11     2    33
%      3     1    23
% ans =
%      3     1    23
%     11     2    33
A 
sortrows(A,2)
% ans =
% 
%      3     1    23
%     11     2    33
sortrows(A,1)
% ans =
% 
%      3     1    23
%     11     2    33

Matlab基础学习---------常用的数学函数实例学习