MATLAB中数组的创建及函数使用

        今天,为大家分享一下MATLAB中最入门的知识——数组(矩阵)的相关内容,在MATLAB中,数组又称为矩阵,当其行数或列数为1时,又可称为行向量或列向量。MATLAB中的运算最核心的是对于矩阵的运算。

        首先,从数组的创建开始。

1.数组元素的输入方式——相关的内容已在上文中有所描述,在此处不作过多赘述,可查询MATLAB每周练——2023.11.20(第一周)-CSDN博客 。

2.等差数组的创建

        使用语法为:数组名=起始值:增量(增量可正可负可省略,省略时默认为1):结束值

如:

        

当省略增量时:

3.特殊数组的创建

特殊数组的创建
eye单位矩阵Y=eye(n);Y=eye(m,n);Y=eye(size(A))
linspace线性分布向量~均匀分布y=linspace(a,b);y=linspace(a,b,n)
ones全部元素为1X=ones(n);X=ones(m,n);X=ones([m,n])
zeros全部元素为0Z=zeros(n);Z=zeros(m,n);Z=zeros([m,n])
rand随机数组(元素均匀分布)x=rand;x=rand(n);x=rand(m,n);x=rand(size(A))
randn随机数组(元素正态分布)z=randn;z=randn(n);z=randn(m,n);z=randn(xize(A))

4.对数组的操作

        ①数组的索引

        对数组的索引通常为对数组元素的索引,在索引中,通常利用下标进行索引。如:

A(m,n)表示矩阵A的m行n列的对应元素。

        也可以对元素的整行或整列元素进行索引,使用语法为:

A(m,:)表示对矩阵A的m行元素全部进行索引;A(:,n)表示对矩阵A的n行元素全部进行索引。

具体应用如下:

> A=[1,2,3;4,5,6;7,8,9]

A =

     1     2     3
     4     5     6
     7     8     9

>> A(2,3)

ans =

     6

>> A(2,:)

ans =

     4     5     6

>> A(:,3)

ans =

     3
     6
     9

>> 

        ②数组的拓展

        对数组的拓展主要是对元素进行拓展,其未拓展的元素自动填充为0,如对3×3的数组进行拓展,使其第4行第1列元素为2,即可使用命令A(4,1)=2;即可实现该目标,如下:

>> A(4,1)=2

A =

     1     2     3
     4     5     6
     7     8     9
     2     0     0

        ③数组元素的查找

        对数组元素进行查找通常用到find函数,使用语法为[i,j]=find(X),即在数组X中寻找不为0的元素对应的下标,也可用来查找是否存在某个值,使用如下:

>> X=[1,2,3,4,5,6,7,8,9]

X =

     1     2     3     4     5     6     7     8     9

>> [i,j]=find(X)

i =

     1     1     1     1     1     1     1     1     1


j =

     1     2     3     4     5     6     7     8     9

>> find(X>6)

ans =

     7     8     9

        ④数组的排序

        对数组的排序通常使用sort函数,使用语法为:B=sort(A,dim,mode),其中,dim为所要排序的维度,mode为排序模式,当mode为1时为按列排列,当mode为2时为按行排序,默认为按列排列,有ascend升序模式与descend降序模式,默认为升序模式。使用如下:

>> A

A =

     3     6     5
     7    -2     4
     1     0    -9

>> B=sort(A,1)

B =

     1    -2    -9
     3     0     4
     7     6     5

>> B=sort(A,2)

B =

     3     5     6
    -2     4     7
    -9     0     1

>> B=sort(A)

B =

     1    -2    -9
     3     0     4
     7     6     5

>> B=sort(A,2,'descend')

B =

     6     5     3
     7     4    -2
     1     0    -9

        ⑤数组维度的计算

        对数组维度的计算使用size函数,具体内容可在MATLAB每周练——2023.11.20(第一周)-CSDN博客中进行查阅,在此处不做过多赘述。

        ⑥矩阵的复制

        矩阵的复制通常使用repmat函数,使用语法为:B=repmat(A,m,n),即将矩阵A作为一个整体拓展为一个m行n列的新矩阵B,使用如下:

>> A=[1,2;3,4]

A =

     1     2
     3     4

>> B=repmat(A,2,2)

B =

     1     2     1     2
     3     4     3     4
     1     2     1     2
     3     4     3     4

        5.最后对数组的运算进行论述

        数组的运算更多的是数组中元素的运算(同维度),主要有加减乘除以及幂运算几种运算方式。

>> A=[1,2;3,4]

A =

     1     2
     3     4

>> B=ones(2)

B =

     1     1
     1     1

>> c1=A+B

c1 =

     2     3
     4     5

>> C2=A-B

C2 =

     0     1
     2     3

>> C3=A.*B

C3 =

     1     2
     3     4

>> C4=A./B

C4 =

     1     2
     3     4

        切记,在对数组的元素进行乘除运算时是点乘和点除运算,否则需要满足矩阵乘除的条件。

今天的分享就到此为止,希望大家可以加深对数组的创建以及相关函数的使用,在对数组的使用中融会贯通,谢谢大家!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值