第二讲矩阵和数组的操作PPT讲稿.ppt
《第二讲矩阵和数组的操作PPT讲稿.ppt》由会员分享,可在线阅读,更多相关《第二讲矩阵和数组的操作PPT讲稿.ppt(56页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第二讲矩阵和数组的操作第1页,共56页,编辑于2022年,星期二一一 矩阵的建立矩阵的建立1.1.直接输入法直接输入法2.2.利用利用M文件建立矩阵文件建立矩阵3.3.利用矩阵编辑器利用矩阵编辑器Matrix Editor完成输入和完成输入和修改修改4.4.利用利用MATLAB函数建立矩阵函数建立矩阵5.5.建立大矩阵建立大矩阵第2页,共56页,编辑于2022年,星期二 将将矩矩阵阵的的元元素素用用方方括括号号括括起起来来,按按矩矩阵阵行行的的顺顺序序输输入入各各元元素素,同同一一行行的的各各元元素素之之间间用用空空格格或或逗逗号号分分隔隔,不不同同行行的元素之间用的元素之间用分号分号分隔。分
2、隔。A=16 3 2 13;5 10 11 8;9 6 7 12;4 15 14 1A=16 3 2 13 5 10 11 8 9 6 7 12 4 15 14 1第3页,共56页,编辑于2022年,星期二 对对于于比比较较大大且且比比较较复复杂杂的的矩矩阵阵,可可以以为为它它专专门门建建立立一个一个MM文件。文件。例例:利用利用MM文件建立文件建立A A矩阵。矩阵。(1)(1)启启动动有有关关编编辑辑程程序序或或MATLABMATLAB文文本本编编辑辑器器,并并输输入待建矩阵入待建矩阵.(2)(2)把输入的内容存盘把输入的内容存盘(设文件名为设文件名为mymatrix.m)mymatrix.
3、m)。(3)(3)运运行行该该M M文文件件,就就会会自自动动建建立立一一个个名名为为A A的的矩矩阵,可供以后使用。阵,可供以后使用。第4页,共56页,编辑于2022年,星期二A=.16.0 3.0 2.0 13.0 5.0 10.0 11.0 8.0 9.0 6.0 7.0 12.0 4.0 15.0 14.0 1.0(2)(2)存为存为:mymatrix.m:mymatrix.m(3)(3)运行运行:mymatrix:mymatrix(1)MATLAB(1)MATLAB程序编辑器中输入程序编辑器中输入:(一一)利用利用MATLABMATLAB程序编辑器程序编辑器:第5页,共56页,编辑于
4、2022年,星期二(1)编辑一个文本文件编辑一个文本文件:16.0 3.0 2.0 13.05.0 10.0 11.0 8.09.0 6.0 7.0 12.04.0 15.0 14.0 1.0(2)装入装入 该文本文件:该文本文件:load mymatrix.dat 或者:或者:load mymatrix.txt(3)创建一个变量名为创建一个变量名为mymatrix的矩阵的矩阵(二二)利用其它文本编辑器利用其它文本编辑器:(文本或二进制格式)(文本或二进制格式)将以文本或二进制格式存储的数据读入将以文本或二进制格式存储的数据读入 MATLAB 的另一种方式是用的另一种方式是用 Import W
5、izard.FileImport Data第6页,共56页,编辑于2022年,星期二 先在命令窗口输入:先在命令窗口输入:A=1 A=1在在WorkspaceWorkspace窗窗口口,双双击击该该变变量量,打打开开矩矩阵阵编编辑辑器器,进行输入和修改。进行输入和修改。第7页,共56页,编辑于2022年,星期二几几个个产产生生特特殊殊矩矩阵阵的的函函数数:zeros、ones、eye、rand、randn。这这几几个个函函数数的的调调用用格格式式相相似似,下下面面以以产产生生零零矩矩阵阵的的zeros函数为例进行说明。其调用格式是:函数为例进行说明。其调用格式是:zeros(m)产生产生mm零
6、矩阵零矩阵 zeros(m,n)产生产生mn零矩阵。零矩阵。zeros(size(A)产生与矩阵产生与矩阵A同样大小的零矩阵同样大小的零矩阵相相关关的的函函数数有有:length(A)给给出出行行数数和和列列数数中中的的较较大大者者,即即length(A)=max(size(A);ndims(A)给给出出A的的维维数,数,size(A)多维矩阵各维长度多维矩阵各维长度第8页,共56页,编辑于2022年,星期二Z=zeros(2,4)Z=0 0 0 0 0 0 0 0R=randn(4,4)%均值为均值为0 方方差为差为1的随机矩阵的随机矩阵R=1.0668 0.2944 -0.6918 -1.
7、44100.0593 -1.3362 0.8580 0.5711-0.0956 0.7143 1.2540 -0.3999-0.8323 1.6236 -1.5937 0.6900F=5*ones(3,3)F=5 5 5 5 5 5 5 5 5N=fix(10*rand(1,10)N=4 9 4 4 8 5 2 6 8 0第9页,共56页,编辑于2022年,星期二此外,常用的函数还有此外,常用的函数还有reshape(A,m,n),它在矩阵,它在矩阵总元素保持不变的前提下,将矩阵总元素保持不变的前提下,将矩阵A重新排成重新排成mn的二维矩阵的二维矩阵,其元素是以列的方式从其元素是以列的方式从A
8、中获得,中获得,A必必须包含须包含mn个元素个元素。第10页,共56页,编辑于2022年,星期二A=16 3 2 13 5 10 11 8 9 6 7 12 4 15 14 1reshape(A,2,8)ans=16 9 3 6 2 7 13 12 5 4 10 15 11 14 8 1第11页,共56页,编辑于2022年,星期二 大矩阵可由方括号中的小矩阵建立起来。大矩阵可由方括号中的小矩阵建立起来。例如例如:A=1 2 3;4 5 6;7 8 9;C=A,eye(size(A);ones(size(A),AC=1 2 3 1 0 0 4 5 6 0 1 0 7 8 9 0 0 1 1 1
9、1 1 2 3 1 1 1 4 5 6 1 1 1 7 8 9第12页,共56页,编辑于2022年,星期二6 6 冒号表达式冒号表达式冒号表达式的一般格式:冒号表达式的一般格式:e1:e2:e3还还可可以以用用linspace函函数数产产生生一一个个线线性性间间隔隔的的行行向向量量:linspace(a,b,n):a,b,n:初值,终值,点数:初值,终值,点数linspace(a,b,n)与与 a:(b-a)/(n-1):b 等价。等价。linspace用用于于产产生生一一个个等等差差数数列列,括括号号里里三三项项分分别别表表示起始值、终止值和元素数目;示起始值、终止值和元素数目;logspa
10、ce用用于于产产生生一一个个对对数数间间隔隔行行向向量量(等等比比数数列列),b=logspace(0,4,5),表表示示产产生生一一个个起起始始值值为为100,终终止止值为值为104,元素数目为元素数目为5的等比数列的等比数列.第13页,共56页,编辑于2022年,星期二X=10:20X=0:0.1:0.5X=linspace(0,pi,11)或或X=linspace(0,1,11)*piX=Columns 1 through 7 0 0.3142 0.6283 0.9425 1.2566 1.5708 1.8850 Columns 8 through 11 2.1991 2.5133 2.
11、8274 3.1416第14页,共56页,编辑于2022年,星期二save mydata A X load mydata 系统自动沿设定好的路径以系统自动沿设定好的路径以”.mat.mat”格式存储文件格式存储文件 savefile=mydata.mat;savefile=mydata.mat;save(savefile,A,X)save(savefile,A,X)Load(savefile)Load(savefile)如果想存储在指定路径:如果想存储在指定路径:save D:homeworkmydata A X 或者:或者:savefile=D:homeworkmydata.mat;save
12、file=D:homeworkmydata.mat;第15页,共56页,编辑于2022年,星期二MATLAB允允许许用用户户对对一一个个矩矩阵阵的的单单个个元元素素进进行行赋赋值值和和操操作作。例如例如 A(3,2)=200也也可可以以采采用用矩矩阵阵元元素素的的序序号号来来引引用用矩矩阵阵元元素素。矩矩阵阵元元素素按按列列编号,先第一列,再第二列,依次类推。编号,先第一列,再第二列,依次类推。以以 mn 矩阵矩阵A为例,矩阵元素为例,矩阵元素 A(i,j)的序号为:的序号为:(j-1)*m+i。其其相相互互转转换换关关系系也也可可利利用用sub2ind和和ind2sub函函数数求求得得(分分
13、别别为为:把把矩矩阵阵下下标标变变为为元元素素序序号号和和把把元元素素序序号号变变为矩阵下标)。为矩阵下标)。1.1.矩阵元素矩阵元素第16页,共56页,编辑于2022年,星期二A=17 24 1 8;2 22 7 14;4 6 13 20A=17 24 1 8 2 22 7 14 4 6 13 20%ind=sub2ind(size(A),2,2)(ind=5)ind=sub2ind(size(A),2,3)(ind=8)i,j=ind2sub(size(A),5)i=2j=2第17页,共56页,编辑于2022年,星期二A(:,j)表表示示取取A矩矩阵阵的的第第j j列列全全部部元元素素;A
14、(i,:)表表示示A矩矩阵阵第第i行行的的全全部部元元素素;A(i,j)表表示示取取A矩矩阵阵第第i行行、第第j列列的的元元素。素。A(i:i+m,:)表表 示示 取取A矩矩 阵阵第第i i+m行行 的的 全全 部部 元元 素素;A(:,k:k+m)表表示示取取A A矩矩阵阵第第kk+m列列的的全全部部元元素素,A(i:i+m,k:k+m)表表示示取取A矩矩阵阵第第ii+m行行内内,并并在在第第kk+m列列中的所有元素。中的所有元素。(1)(1)利用冒号表达式获得子矩阵利用冒号表达式获得子矩阵第18页,共56页,编辑于2022年,星期二 在在MATLAB中中,定定义义 为为空空矩矩阵阵。给给变
15、变量量X赋空矩阵的语句为赋空矩阵的语句为X=。注注意意:X=与与clear X不不同同,clear是是将将X从从工工作作空空间间中中删删除除,而而空空矩矩阵阵则则存存在在于于工工作作空空间,只是维数为间,只是维数为0。将将某某些些元元素素从从矩矩阵阵中中删删除除,采采用用将将其其置置为为空空矩矩阵阵的方法就是一种有效的方法。的方法就是一种有效的方法。第19页,共56页,编辑于2022年,星期二X=16 2 135 11 89 7 124 14 1X=16 9 2 7 13 12 1第20页,共56页,编辑于2022年,星期二A=4:6A=A-3;A;A+3A=1 2 3 4 5 6 7 8 9
16、B=A(1:2,2:3)B=2 3 5 6A(:,2)=A=1 3 4 6 7 9A(2,2)=0A=1 3 4 0 7 9A(3)ans=7A(2:4)ans=4 7 3第21页,共56页,编辑于2022年,星期二A=1 2 3 4 5 6 7 8 9sum(A)ans=12 15 18Aans=1 4 7 2 5 8 3 6 9B=diag(A)%提取或提取或建立对角阵建立对角阵B=1 5 9C=diag(B)C=1 0 0 0 5 0 0 0 9第22页,共56页,编辑于2022年,星期二A=1 2 3 4 5 6 7 8 9B=A4B=0 0 0 0 1 1 1 1 1r,c=find
17、(A4)r=3 2 3 2 3c=1 2 2 3 3第23页,共56页,编辑于2022年,星期二A=rand(3,4)A1=A(2:3,1,3,4)A2=A(1,3,2,4)L=A(2,:)tril(A)%主对角线及以下元素取矩阵主对角线及以下元素取矩阵A的元素,其余为的元素,其余为0tril(A,K)triu(A)%主对角线及以上元素取矩阵主对角线及以上元素取矩阵A的元素,其余为的元素,其余为0triu(A,K)rot90(A)%逆时针旋转逆时针旋转90度度rot90(A,K)L=flipud(A)%将矩阵将矩阵A上下翻转上下翻转 fliplr(A)%将矩阵将矩阵A左右翻转左右翻转resha
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第二 矩阵 数组 操作 PPT 讲稿
限制150内