讲真,咱们把这套秘籍吃透了,以后在Matlab里写程序、搞数据真的太顺手了。从概率统计开始讲起,大家想画个概率质量函数图,直接拿pmf函数一画,“成功3次”这种事儿的概率分布马上就看得清清楚楚。至于正态分布,normpdf算密度函数,normcdf算累积分布,这俩组合起来用,再也不用为了假设检验那事儿到处找路了。算期望、方差和标准差也有三板斧——mean、var和std,想知道一个数在哪儿出现最多,max和min还有ind2sub就能帮你找出坐标。 到了数据结构这块儿,sort能排升序降序,sortrows还能横着排,配合flipud和fliplr翻来覆去的摆弄数据简直不要太简单。要是想把不同类型的数据放在同一列里用单元数组cellfun批量运算,那就省去了写一堆if-else的麻烦。 机器学习前还得做归一化和标准化,normalize函数或者直接用(X-mean(X))/std(X),不管是缩到[0,1]还是变成标准正态分布都能搞定。函数M文件的写法也挺讲究的,只要在里面把算法写好输入输出标清楚,别人调用的时候基本不会踩坑。 咱们再来说说线性代数的基础知识。冒号“:”是个等差数列生成器,配合linspace或者logspace就能一键生成均匀间隔或对数间隔的向量。矩阵的逆det算行列式inv求逆矩阵eig求特征值特征向量这些都很简单。魔方阵magic、Pascal矩阵pascal、Hilbert矩阵hilb这些神器能帮咱们解决不少数学竞赛的难题。 要是要生成随机数矩阵,rand(m,n)或者randn(m,n)就能直接生成[0,1)或者标准正态分布的矩阵。想知道矩阵的大小size、维度ndims、秩rank、Frobenius范数norm('fro')都能给你算得清清楚楚。 reshape能重塑矩阵维度,permute能转置矩阵一步到位。解线性方程组的时候用LU分解lu能更快一些,而Cholesky分解chol专门用来对付对称正定矩阵。最后这个Moore-Penrose广义逆pinv就算是伪逆也能算得稳稳当当。 这一套从概率统计、数据结构到线性代数的方法学下来,Matlab就像是把那些复杂的数学运算都给拆成了一块块积木,咱们只要学会怎么把这些积木拼起来就能在科研和工程中如鱼得水了。