- 在matlab中数据的逻辑形式可以表现出多维,但物理上在内存中的形式却是很简单按列存放的。
matlab(矩阵实验室)的数据结构只有矩阵(array)一种形式(可细分为普通矩阵和稀疏矩阵)。
单个的数就是1*1矩阵;数组或向量就是1*n或n*1矩阵,事实上对于matlab来说数、数组或向量和二维矩阵本质没任何区别,它们维数都是二。
首先最重要的:
-
帮助命令(help)
>>help help:可看帮助文档
>>help rand:可看rand函数使用
-
octave安装功能包(pkg)
地址:https://octave.sourceforge.io/packages.php
特别的,octave不再维护nnet包了https://octave.sourceforge.io/nnet/
>>pkg install nnet-0.0.13.tar.gz :安装功能包
>>pkg load nnet:导入功能包,不过每次打开octave都要重新导入
基本的:
-
数学公式(直接输)
e.g:
>>log(e) % ‘%’表示注释 e为自然对数
ans = 1
着重讲一下rem()函数
fix():直接取整数部分,x>0时,取整,不四舍五入,正负都一样;
【与int(x)强制类型转换区别:整数一样,而负数时,int(x)取<=x的整数,fix(-2.5)=-2,int(-2.5)=-3】
floor():向下取整
【对比ceil():向上取整】
rem(x,y)采用: x - y .* fix (x ./ y)【针对矩阵运算时】,即用fix()
注意:正负由被除数决定
【对比:mod(x,y)采用: x - y .* floor (x ./ y),即向下取整,且正负由除数决定】
-
符号&命令:
-----%%:双%在matlab中其分段作用,可以把代码分成几块,然后单独运行,便于调试,直接点运行则运行全部代码。光标选中要运行的块,然后点运行结则可以只运行这一块(但前面块定义的变量仍存在)
------clc:clears the command window and homes the cursor.
-
矩阵相关:
-- repmat (A, M)
-- repmat (A, M, N)
-- repmat (A, M, N, P ...)
-- repmat (A, [M N])
-- repmat (A, [M N P ...]):
Replicate Matrix:复制并平铺矩阵,把矩阵A复制m*n块
即把矩阵A看做一个元素,然后生成M*N...矩阵,每一块都为A