Matlab和R矩阵运算命令汇总

matlab 常用命令

矩阵创建

1
2
3
a=[1,2,3;4,5,6;7,8,9]
b=[1:1:3;4:1:6;7:1:9]
c=[linspace(1,3,3); linspace(4,6,3); linspace(7,9,3)]
MATLAB

全为1的矩阵

1
2
ones(3)
ones(3,4)
MATLAB

全为0的矩阵

1
2
zeros(3)
zeros(3,4)
MATLAB

在(0,1)区间均匀分布的随机阵

1
2
rand(3)
rand(3,4)
MATLAB

单位阵

1
eye()
MATLAB

均值为0,方差为1的标准正态分布随机矩阵

1
2
randn(3)
randn(3,4)
MATLAB

对角矩阵

1
2
diag([1,2,3,4])
diag([1,2,3,4],1)
MATLAB

利用小矩阵构建大矩阵

1
2
e=[a;b]
f=[a,b]
MATLAB

矩阵的拆分

1
2
3
4
5
6
a(2,2)
a(1,:)
a(:,3)
a(1:2,1:2)
a(1,1:end)
a(end,end)
MATLAB

矩阵的逆

1
inv(a)
MATLAB

行列式

1
det(a)
MATLAB

对角线元素

1
2
diag(a)
diag(a,1)
MATLAB

矩阵转置

1
a’
MATLAB

矩阵开方

1
2
sqrt(a)
a.^0.5
MATLAB

在MATLAB中,有一种特殊的运算,因为其运算符是在有关算术运算符前面加点,所以叫点运算,如:.*、./、.\和.^。两矩阵进行点运算是指它们的对应元素进行相关运算,要求两矩阵的维参数相同。

1
2
3
4
5
a.*b
a.\b
a./b
a.^2
a.^0.5
MATLAB

<(小于)、<=(小于或等于)、>(大于)、>=(大于或等于)、==(等于)、~=(不等于)

1
2
3
4
5
6
7
8
9
a<b
a<=b
a>b
a>=b
a==b
a~=b
a>5
a>=5
a==5
MATLAB

找出a中大于5的元素位置

1
find(a>5)
MATLAB

改变维数

1
2
a=[1:12]
reshape(a,3,4)
MATLAB

旋转90度

1
rot90(b)
MATLAB

左右翻转

1
fliplr(b) ; flipdim(b,2)
MATLAB

上下翻转

1
flipud(b) ; flipdim(b,1)
MATLAB

上三角元素

1
2
tril(c)
tril(c,1)
MATLAB

下三角元素

1
2
triu(c)
triu(c,-1)
MATLAB

确定矩阵的维数

1
size(b)
MATLAB

求矩阵的迹

1
trace(c)
MATLAB

R 常用命令

创建矩阵

1
2
3
4
a=matrix(c(1,2,3,4),ncol=2,byrow=T)
b=matrix(c(5,6,7,8),ncol=2,byrow=T)
c=matrix(c(1,2,3,4),ncol=2,byrow=F)
d=matrix(c(5,6,7,8),ncol=2)
MATLAB

矩阵线性运算

1
2
3
4
5
a+b
a-b
2*a
4*b
a*b
MATLAB

矩阵乘法

1
2
3
a%*%b
crossprod(a,b)
t(a)%*%b
MATLAB

矩阵转置

1
2
t(a)
t(b)
MATLAB

t()作用于向量上

1
2
3
x=c(1:12)
t(x)
t(t(x))
MATLAB

取方阵的对角线元素

1
diag(a)
MATLAB

求方阵的迹

1
sum(diag(a))
MATLAB

构造对角矩阵

1
c=diag(c(1,2,3,4))
MATLAB

矩阵求逆

1
solve(a)
MATLAB

矩阵的行列式

1
2
3
det(a)
det(b)
det(c)
MATLAB

Matlab和R矩阵运算命令汇总
http://example.com/2018/09/27/2018-09-27-Matlab和R矩阵运算命令汇总/
Author
Hoey
Posted on
September 27, 2018
Licensed under