Matlab学习

Matlab

0x00 Introduction

经过18年的学习,我终于发现,我最多同一时间段分心学习2个方面的知识,达到基本掌握的程度,但不够深入。打下这些话时,我正在学习C、Python、R和Matlab。。。。。。

学习重点及流程:数据类型 --> 数据可视化 --> 算法 --> 开发

0x01 Basic

Matlab: Matrix laboratory,因此它重在矩阵运算,将一切视为矩阵来处理。

1+2[1]+[2]是等同的,Matlab采取第二种方式处理。

基础特性可以参考Python或者R,交互式操作。

特殊变(常)量

特殊变量或常量 说明 特殊变量或常量 说明
ans answer,储存上次运算的结果 realmin 最小正实数
pi 圆周率 Nan 或 nan 不定值(o/o, inf/inf, inf-inf)
i 或 j 虚数单位 nargin 函数输入参数个数
inf 或 Inf 无穷大 nargout 函数输出参数个数
eps 浮点数相对精度 lasterr 返回最新的错误信息
realmax 最大正实数 lastwarn 返回最新的警告信息

数据类型初探

logical 布尔类型

char 字符类型

numeric 数值类型,分为整型(有无符号、8、16、32、64位),浮点型(单双精度浮点类型)

cell 元胞数组,其中元素可以为任意类型,任意长度

structure类似于C语言中的结构体

table 表格,R语言

function handle函数句柄。。。

输出语句

控制语句

if elseif else end

1
2
3
4
5
6
7
8
a = 2
if a == 2
disp 6
elseif a == 1
disp 7
else
disp 8
end

while end

1
2
3
while a == 2
disp(6)
end

switch case otherwise end

1
2
3
4
5
6
7
8
switch n
case 1
n+1
case 2
n+2
otherwise
n+3
end

for k=1:n end

1
2
3
for k=1:9
disp(k)
end

continue & break

作用与Python中相同。

try catch end

1
2
3
4
5
try
disp(a)
catch ME
disp(ME)
end

0x02 Environment

路径搜索机制

  1. MATLAB内存,判断变量或者是特殊常量
  2. 内部函数
  3. 当前目录下的.m文件
  4. 搜索路径的其他目录下的.m文件

搜索路径可设置

0x03 Tips

清理环境

1
2
3
4
clc,clear,close all
# clc: 清理命令行窗口
# clear: 清理内存环境中的变量
# close: 关闭打开的文件

清理内存环境中的变量、关闭打开的文件,防止冲突。

序列产生行向量

1
2
t = a:b:c
# 从a开始,步长为b,一直到c为止产生行向量