vector向量 array数组 double click双击
一.基本操作(将MATLAB当作一个计算机来使用)
1.运算符号 + - * / ^
2.sqrt代表(^1/2)
exp(2)代表e^2
pi代表(圆周率)
3.赋值之前不需要提前说明
直接在【命令行窗口】输入再点击enter即可,需要区分大小写
"="用于变量赋值,只可使用类似“A=10”来进行赋值,不可交换左右顺序
若要比较值的相等性,请使用“==”
4.在【命令行窗口】输入【who】,即可看到定义的各个变量
在【命令行窗口】输入【whos】,即可看到各个变量的数据类型
或者双击【工作区】内变量名称,查看相应变量的数据类型
5.不可以被用作变量的一些字符:
在【命令窗口】输入【iskeyword】,即可看到不可被用作变量的字符
例: ans i,j(复数) inf(无穷) eps(很小的数) NaN(not a number) pi(圆周率Π)
6.MATLAB calling priority优先级(由高到低依次)
variable(变量)
Build-in function(内建函数)
Subfuntion
不要用Build-in function name 或者是 keyword 当作variable name
7.消除定义变量:将定义的变量从【工作区】内消除
在【命令窗口】内输入【clear 需要消除的变量名称】,即可进行消除
在【命令窗口】内输入【clear】,即可 消除所有定义的变量
8.Number DIsplay "Format" 数字显示
>>format long
在【命令窗口】输入【format 数字形式】,即可,例如输入【format long】
形式---举例
short---3.1416
long---3.141592653589793
shortE---3.1416e+00
longE---3.141592653589793e+00
bank---3.14
hex(16进位)---400921fb54442d1
rat(将数值转为有理数,以分数形式显示)---355/113
9.Command Line Terminal 命令行终端
>>A=10;(分号即表示不显示运算结果)
10.调用之前的指令,可在【命令窗口】fx>>后使用【方向键上键】
11.在【命令行窗口】输入【clc】,即可清除【命令行窗口】内的所有内容,即清空本窗口
二.Array(Vector and Matrix) 数组(向量和矩阵)
1.行向量(Row vector) >>a=[1 2 3 4]
列向量(Column vector)>>b=[1; 2; 3; 4] (;分号表示换行)
A=[1 21 6; 5 17 9; 31 2 7] 表示三行三列 行列式
2.数组索引(Array indexing),在一个矩阵中选择一个特定的元素子集
例如:A=[1 21 6; 5 17 9; 31 2 7]
方法一:
在【命令窗口】键入【A=(1,2)】,即索引矩阵第一行,第二列的数字
在【命令窗口】键入【A=([1 3],[1 2])】 ,即索引矩阵第一行与第三行,第一列与第二列相交叉处
方法二:
A(1)=1 A(2)=5 A(3)=31 A(4)=21 A(5)=17 A(6)=2 ......
A([1 3 5]) ans=1 31 17
A([1 3;1 2]) ans=1 31;1 5(两行两列矩阵)
3.替换数组中某个位置的数字
例如:将A中第一行,第二列的21替换为76,
即可在【命令窗口】内输入【A(1,2)=76】,即可完成替换
4.Colon Operator冒号运算符
定义变量
A=[1 2 3 ... 100] 即可输入A=[1:100]
B=[1 3 5... 99]即可输入B=[1:2:99],即开始是1,等差为2,最后一位结束为99
数据索引
A(3,:)即可调出A数列的第三行(:冒号可以表示全部,即第三行的全部列)
A(3,:)=[],表示消除数列A第三行的所有列,即可将数列A变为两行三列的数列
5.数组连接Array Concatenation
A=[1 2;3 4];
B=[9 9;9 9]
若F=[A,B],则F=[1 2 9 9;3 4 9 9]
若F=[A;B],则F=[1 2; 3 4; 9 9;9 9]
6.数组操作/运算
+ - * / · '
两个矩阵运算:
加减+ - 即对应位置相加
·*(点乘) 即对应位置的数相乘
/(除法) 即大概等于乘以对应转置矩阵
·/(点除) 即矩阵对应位置的数相除
‘(转置) 即转置矩阵
矩阵与实数的运算:
加法+ 即矩阵每个位置都要加上对应的实数
除法/和点除·/ 结果相同,矩阵每个对应位置的数都要分别除以实数
次方^ 例如A^2(即本次实数取2),A^2=A*A
点次方·^ 即矩阵内每个数字分别取2(对应实数)次方
7.一些特殊矩阵
eye(n) 即n阶单位矩阵
zeros(n1,n2) 即n1*n2 zero matrix 例如zeros(2,4),即为两行四列的全0矩阵
ones(n1,n2) 例如ones(2,4),即为两行四列的全1矩阵
diag() 对角线矩阵 例如diag([1 2 3]),即为对角线为1 2 3 ,其余部分数字均为0的三阶对角线矩阵
8.some matrix related functions(一些与矩阵相关的函数)
例如A=[1 2 3;0 5 6;7 0 9]
max(A) ans=7 5 9 即输出该矩阵每一列最大的数
max(max(A)) ans=9 即输出该矩阵所有位置最大的数
max(A') 即输出该矩阵每一行的最大值
min(A)
sum(A) ans=8 7 18 即该矩阵每一列加总,输出结果
mean(A) ans=2.6667 2.3333 6.0000 即矩阵每一列的平均值
sort(A) 每一列都按从小到大排序,输出一个新的矩阵
sortrows(A) 第一列按从小到大进行重新排序,第二列和第三列依照第一列的变换进行对应的变换
size(A) ans=3 3 即A为一个三行三列的矩阵
length(A) 列数
find(A) 例如find(A==2) ,ans=4 即在矩阵A内,哪个位置的数字等于2,在第四个位置的数字