Matlab 一些简单的语法
1.兀在Matlab中为pi
2.Matlab里面我们要声明一个变量 直接声明就可以了,比如A=11
但是默认的类型是double
3.Matlab的分号代表不显示结果
4.Matlab计算的结果的ans可以当作变量去参与下一次计算
5. A[1 2 3 4]中间只有空格的代表横向量
6. A[1;2;3;4]中间有分号的代表列向量
7.who我们可以查看所有变量有哪些
8.whos我们查看所有向量及其详细信息
9.clear+变量名可以删除变量
10. clc可以清空屏幕
11.ans 即为answer 也就是计算结果
12.Inf表示无穷 例子:1/0
13.i j一般代表着复数
14.代表非常小的数eps
15.NaN不是一个数值 例子:Inf/Inf
16.我们要查看哪些是关键字不适合被当作变量 直接iskeyword就可以了!
17.我们正常pi输入你会发现是3.1416 那如果我们想要多得到几位怎么办?
format就可以了 比如输入format long 在输入pi结果就是 3.141592653589793
3.1416是format short的结果如果要写成科学计数法的形式就直接format shortE
对于long同理 format longE
format bank是保留两位
format hex 把数值转成16进位
format rat 把数值转成分数
18.键盘上的向上箭头可以把前面的数据调出来
19.A[1 2 3] B[1,2,3] A(3) 表示A矩阵的第三个元素 B(2)表示B矩阵的第二个元素
那么如果对于复杂的矩阵呢?比如3乘3的矩阵,对于这种复杂的矩阵
比如C矩阵是一个3乘3的矩阵,我如果想表示第三行第二列的元素 我直接C(3,2)就可以了
注意 要有中间那个逗号 当然还有一种方法 以下面这个矩阵为C矩阵
从第一列开始从上到下 依次C(1) C(2)C(3)
再到第二列从上到下C(4)C(5)C(6) 依次类推
比如C(5)==1 C(8)==0 C(1)==1
C[1 3 5]就是C矩阵的第1 3 5个元素共同组成的一个新矩阵
C(1 3; 1 3)同理
C([1 3] ,[1 3])
逗号前面表示行 逗号后面表示列 这个就表示第一行第三行和第一列 第三列交集的元素
也就是C([1 3], [1 3])==(1 0;0 1)
20.比如我们要输入一个矩阵A[1 2 3 ... 100]如果我们要一个一个输,就会很麻烦 我们可以直接
A[1:100]
但是如果方差我不想设置成1 我想设置成2怎么办?
A[1:2:100]表示1到100的数其中方差为2,但是你会发现到99就没了,不会显示100了!
21.如果我们要单独删除一个矩阵的第三行怎么办?
clear只能清楚一个变量 无法清除部分的矩阵,可以直接
A(3,:)表示A矩阵的第三行所有元素
A(:,3)表示A矩阵的第三列行所有元素
A(:,:)表示A矩阵的行所有元素
A(3,:)=[]我直接把A矩阵的第三行所有元素置为空不就相当于删掉了A矩阵的第三行了嘛!
22.我们同样可以用矩阵去表示矩阵!
23.矩阵的计算
乘法 .*即两个矩阵对应位置相乘
*即矩阵与矩阵的乘法
同理
矩阵的除法
./两个矩阵对应位置相除
/两个矩阵相除(乘矩阵的逆)
次方
.^矩阵对应位置值各自次方
^矩阵自身的次方
'符号表示转至的意思
24.
eye(n)表示n×n的单位矩阵
25.
zero(n1,n2)表示n1×n2的0矩阵
26.
ones(n1,n2)表示n1×n2的里面全是1的矩阵
27.
diag对角线矩阵 diag([1 2 3 4])对角线是1 2 3 4其他位置是0的矩阵
28.
max(A)表示A矩阵每一列的最大的元素构成的矩阵(如果只有一行或者一列则会求出其最大值)
对于一个复杂矩阵我们要找出其中的最大值 可以直接用量变max,比如max(max(A))
min()使用方法和max一致 但是min求的是最小值
sum()使用方法和max一致 但是sum求的是总和
mean()使用方法和max一致 但是mean求的是平均值
29.
sort()是对矩阵的每一列按照从小到大的顺序排序
sortrows()和sortrow的区别在于sortrow的每一行是固定的,我如果要交换两个数的同时,这两行也会被交换
size()返回矩阵的维度(行 ,列)
length()返回矩阵维度较大的那个
find()函数会返还找到的数所处的位置
比如find(A==5)会返回A矩阵中5所在的位置
没有则返回空的