MATLAB基本语法速成

最近由于马上要参加建模比赛了,但是很多东西还没学到(包括MATLAB)所以这几天恶补一下😂
因为本人有python基础,又因为MATLAB语法有很多和python很像,所以整个文章将会通过对比MATLAB与python语法的区别,重点去掌握区别部分来学习。

分支语句

if语句

python

# python if...elif...else
if a == 0:
    print('A')
elif b == 1:
    print('B')
else:
    print('C')

matlab

% MATLAB if...elseif....else...end
if a == 0
    fprintf('A');
elseif b == 1
    fprintf('B');
else
    fprintf('C');
end

总结:注意matlab判断条件后无:,语句结束后要有;,整体语句结束后记得加end

switch语句

由于python并没有switch语句,所以我类比了JavaScript的语法

// JavaScript
 switch (a){
     case b:
         xxx
         break;
     case c:
         xxx
         break;
 }

matlab

switch(a)
    case b
        xxx;
    case c
        xxx;
    end

循环语句

for语句

python

for i in range(1, 11, 3):
    xxx

matlab

for i = 1 : 3 : 10
    xxx;
end

总结:python中步长通常写在第三位而matlab则写在第二位,python的区间为左开右闭而matlab为两边均闭

数学运算

基本运算

操作pythonmatlab备注
++
--
**
//
取整//round()取最接近的整数
取余%mod()
取绝对值abs()abs()
开方math.sqrt()sqrt()python需调用math库
实数化分数rat()
最大公因数gcd()
最小公因数lcm()
自然数math.eexp(1)python需调用math库
圆周率math.pipipython需调用math库
取正弦math.sin()sin()python需调用math库
取余弦math.cos()cos()python需调用math库
取正切math.tan()tan()python需调用math库
最大值max()max()
最小值min()min()
平均值numpy.mean()mean()python需调用numpy库
中位数numpy.median()median()python需调用numpy库
标准差numpy.std()std()python需调用numpy库
微分diff()
积分int()注意int并不是python中的转化为整型

矩阵运算

操作pythonmatlab备注
转置.T
叉积numpy.cross()cross()python需调用numpy库
点积numpy.dot()dot()python需调用numpy库
判断对角矩阵isdiag()
判断下三角矩阵istril()
判断上三角矩阵istriu()
矩阵求逆numpy.linalg.inv()inv()python需调用numpy库

读取csv

csvread(path)
Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐