(1) 如果是向量(无论是行向量还是列向量),都是直接求和
E =[1,2,3]
E =[1;2;3]sum(E)(2) 如果是矩阵,则需要根据行和列的方向作区分
E =[1,2;3,4;5,6]
按列求和(得到一个行向量)
a =sum(E)
a =sum(E,1)
按行求和(得到一个列向量)
a =sum(E,2)
对整个矩阵求和
a =sum(sum(E))
a =sum(E(:))
prod 函数(求积)
(1) 如果是向量(无论是行向量还是列向量),都是直接求积
E =[1,2,3]
E =[1;2;3]prod(E)(2) 如果是矩阵,则需要根据行和列的方向作区分
E =[1,2;3,4;5,6]
按列求积(得到一个行向量)
a =prod(E)
a =prod(E,1)
按行求积(得到一个列向量)
a =prod(E,2)
对整个矩阵求积
a =prod(prod(E))
a =prod(E(:))
max 函数(求最大值)
(1) 如果是向量(无论是行向量还是列向量),都是直接求最大值
E =[1,2,3]
E =[1;2;3]max(E)(2) 如果是矩阵,是按列求最大值
E =[1,2,3;4,5,6]max(E)
输出:456
size 函数(求长度)
A =[1,2,3;4,5,6]% 返回一个行向量,第一个元素是矩阵的行数,第二个元素是矩阵的列数
[r,c]=size(A)
输出: r =2
c =3% 将矩阵A的行数返回到第一个变量 r,将矩阵的列数返回到第二个变量 c
r =size(A,1)% 返回行数
c =size(A,2)% 返回列数
repmat 函数(复制)
A =[1,2,3;4,5,6]% 将矩阵A复制m×n块,即把A作为B的元素,B由m×n个A平铺而成
B =repmat(A,2,1)% 复制两行一列
输出:123456123456
B =repmat(A,2,2)% 复制两行两列
输出:123123456456123123456456
find 函数(查找非0元素)
(1) 如果是向量(无论是行向量还是列向量),都是直接返回非0元素的位置
X =[104-300086]
ind =find(X)
输出:13489
ind =find(X,2)% 返回前2个非0的元素的位置
输出:13(2) 如果是一个矩阵(二维,有行和列),则返回列向量或座标
X =[1-30;008;406]
ind =find(X)% 返回列向量
输出:13489[r,c]=find(X)
输出:
r =13123
c =11233[r,c]=find(X,1)% 只找第一个非0元素的座标
输出:
r =1
c =1
A =[123;221;203]inv(A)
输出:-0.42860.42860.28570.28570.2143-0.35710.2857-0.28570.1429
求特征值和特征向量
A =[123;221;203](1) 求矩阵A的全部特征值,构成向量E
E =eig(A)
输出:-1.31665.31662.0000(2) 求矩阵A的全部特征值,构成对角阵D,并求A的特征向量构成V的列向量
(V的每一列都是D中与之相同列的特征值的特征向量)
[V,D]=eig(A)
输出:
V =0.8364-0.6336-0.2408-0.3875-0.5470-0.8427-0.3875-0.54700.4815
D =-1.31660005.31660002.0000
查看矩阵存储方式
A=[123;456;789];A(4)% 查找元素4的位置
输出:2A(8)% 查找元素8的位置
输出:6A(9)% 查找元素9的位置
输出:9
说明矩阵是按列存储的,如下方式存储
A =123456789
矩阵与常数的大小判断运算
X =[1-30;008;406]
X >0
输出:100001101
X ==4
输出:000000100