学习笔记-Matlab基础学习

基础:数据类型

无穷:Inf或inf

圆周率:pi

字符串:name='jack'

字符串数组:char('jack','lucy')

>> a=char('lucy','tony')

a =

  2×4 char 数组

    'lucy'
    'tony'

整型:uint8、uint16、uint32、uint64、int8、int16、int32、int64

查看最值:intmin('int8')、intmax('int8')

>> intmin('int8')

ans =

  int8

   -128

浮点数:double(默认)、single

浮点精度(数的最小分辨率):eps('single')、eps('double')

浮点精度(数的最大最小值):realmax('single')、realmin('double')

>> eps('single')

ans =

  single

  1.1921e-07
 realmax('single')

ans =

  single

  3.4028e+38

基础:变量

运算符:+、-、*、/、\、^

变量赋值:x=15,x=3*x-12

变量运算:a=12,b=4,c=a+b-2/b

变量打印控制:用;控制

变量命名:字母开头,最长63个字符,可以包含数字字母下划线,大小写敏感,不能有括号空格,不能使用内置关键字(如:length、sum、end、pi、i、j(虚数)、eps、sin、cos、size等等)

查看内置的变量(关键字):iskeyword

查看工作区的变量:whos

基础:常用内置函数

开方:sqrt(x)

开n次方:nthroot(x,n)

指数:exp(x)

绝对值:abs(b)

对数:log(x),log10(x)(默认以e为底)

三角函数:sin(x),cos(x)...

近视函数:就近取整数,就是四舍五入round(x),向零取整fix(x),向上取整ceil(x),向下取整floor(x),取余rem(x)

清楚内存变量:clear x y z、clear all、clc(清除命令窗口)

查看内存变量:who、whos

向量基础

行向量:A=[1 2 3 4]或者A=[1,2,3,4]

列向量:A=[1;2;3;4]

行向量转列向量:B=A(:)或者B=A‘

查看大小:size(A),length(A)

>> A=[1 2;3 4;5 6]

A =

     1     2
     3     4
     5     6

>> size(A)

ans =

     3     2

>> length(A)

ans =

     3

size表示查看矩阵的大小:几行几列

length查看向量的大小:几行

切片方法:

从第二个元素开始,取到最后,按列的顺序编号,end也可以用-1代替,end-1表示到倒数第二个,end-2表示倒数第三个

>> A(2:end)

ans =

     3     5     2     4     6

从第二个元素开始,以1为步长,取到第4个元素

A(2:4)

ans =

     3     5     2

 从第二个元素开始,以2为步长,取到第5个元素

>> A(2:2:5)

ans =

     3     2

取离散的值:

>> A([1,3,4])

ans =

     1     5     2

创建线性分布的向量:

A=1:2:100,从1开始,每隔3隔数取一个数,取到100

A=linspace(1,100,99),在1到100间取99个数,也是一个等差数列

 

换行表达式:用...来表示

标量和向量运算:使用常规运算符就行

向量与向量运算:运算符前带一个点,比如.+、.*、./、.^表示一一对应运算,没有点,则按照矩阵运算规则运算

矩阵基础

矩阵定义:

A=[1,2;2,3]或者A=[1 2;2 3]

多重表达:A=[1:2:11;0:5:25;linspace(10,60,6);6 5 4 6 3 2]

>> A=[1:2:11;0:5:25;linspace(10,60,6);6 5 4 6 3 2]

A =

     1     3     5     7     9    11
     0     5    10    15    20    25
    10    20    30    40    50    60
     6     5     4     6     3     2

零矩阵:zeros(4,3) 四行三列

一矩阵:ones(4,3)

对角矩阵:eye(5)

>> eye(5)

ans =

     1     0     0     0     0
     0     1     0     0     0
     0     0     1     0     0
     0     0     0     1     0
     0     0     0     0     1

矩阵转置:A’

矩阵的分号表达:

>> A

A =

     1     3     5     7     9    11
     0     5    10    15    20    25
    10    20    30    40    50    60
     6     5     4     6     3     2

>> A(:,1:3),A(2:4,1:end),A(2:4,1:end-1)

ans =

     1     3     5
     0     5    10
    10    20    30
     6     5     4


ans =

     0     5    10    15    20    25
    10    20    30    40    50    60
     6     5     4     6     3     2


ans =

     0     5    10    15    20
    10    20    30    40    50
     6     5     4     6     3

离散取值:

A =

     1     3     5     7     9    11
     0     5    10    15    20    25
    10    20    30    40    50    60
     6     5     4     6     3     2

>> A(1:3,[1 3])

ans =

     1     5
     0    10
    10    30

条件取值:

>> A(A>10)

ans =

    20
    30
    15
    40
    20
    50
    11
    25
    60

矩阵元素的删除:A(:,2:4)=[]

矩阵的拼接:C=[A B]

常用矩阵内置函数

创建对角矩阵:

v=[2 4 7],v=diag(v)

v =

     2     4     7


v =

     2     0     0
     0     4     0
     0     0     7

反向获取对焦元素:


>> v=rand(10,5),v=diag(v)

v =

    0.2760    0.7513    0.8407    0.3517    0.0759
    0.6797    0.2551    0.2543    0.8308    0.0540
    0.6551    0.5060    0.8143    0.5853    0.5308
    0.1626    0.6991    0.2435    0.5497    0.7792
    0.1190    0.8909    0.9293    0.9172    0.9340
    0.4984    0.9593    0.3500    0.2858    0.1299
    0.9597    0.5472    0.1966    0.7572    0.5688
    0.3404    0.1386    0.2511    0.7537    0.4694
    0.5853    0.1493    0.6160    0.3804    0.0119
    0.2238    0.2575    0.4733    0.5678    0.3371


v =

    0.2760
    0.2551
    0.8143
    0.5497
    0.9340

改变矩阵形状:reshape(A)

A =

     1     3     5     7     9    11
     0     5    10    15    20    25
    10    20    30    40    50    60
     6     5     4     6     3     2

>> reshape(A,3,8)

ans =

     1     6    20    10     7     6    50    25
     0     3     5    30    15     9     3    60
    10     5     5     4    40    20    11     2

获取矩阵大小:size(A)

获取矩阵最值:

%%按列取最小值,n代表该最小值在该列中第几个元素
>> [d,n]=min(A)

d =

     0     3     4     6     3     2


n =

     2     1     4     4     4     4

>> A

A =

     1     3     5     7     9    11
     0     5    10    15    20    25
    10    20    30    40    50    60
     6     5     4     6     3     2

>> max(A)

ans =

    10    20    30    40    50    60

>> max(max(A))

ans =

    60

求和:sum(A)

排序:sort(A)

中值:medium(A)

平均值:mean(A)

标准差:std(A)

>> A

A =

     1     3     5     7     9    11
     0     5    10    15    20    25
    10    20    30    40    50    60
     6     5     4     6     3     2

>> sum(A)

ans =

    17    33    49    68    82    98

>> sort(A)

ans =

     0     3     4     6     3     2
     1     5     5     7     9    11
     6     5    10    15    20    25
    10    20    30    40    50    60

>> mean(A)

ans =

    4.2500    8.2500   12.2500   17.0000   20.5000   24.5000

>> std(A)

ans =

    4.6458    7.8899   12.1209   15.8535   20.8886   25.4886

>> median(A)

ans =

    3.5000    5.0000    7.5000   11.0000   14.5000   18.0000

点积:dot(A,B)

随机数:

rand产生一个0~1之间double类型的随机数

rand(1,5)产生一个任意元素在0~1之间的一行五列的矩阵

rand(10):产生10行10列矩阵

randperm(10),指定范围内的正整数

>> randperm(10)

ans =

     1     5     7     3     4     6     8     9    10     2

标准正态分布的随机数:randn(4,3)

特征值和特征向量:[v,d]=eig(A),A要是一个方阵

矩阵的运算

加减乘除:+、-、.*、./点乘           *、/叉乘

矩阵求逆:inv(A)

脚本编辑器

脚本定义:.m文件

脚本代码编写:%注释

脚本函数编写:function的使用

脚本函数运行:name

f为输出值,脚本名要和函数名一致

 匿名函数:

>> f2=@(x,y)2*x^2-4*x*y+y^2;
>> f2(2,3)

ans =

    -7

 

 

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

南叔先生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值