MATLAB创建矩阵的3种方法
矩阵的生成主要有直接输入法、M 文件生成法和文本文件生成法等。
【实例】创建元素均是 15 的 3×3 矩阵。MATLAB 程序如下:
注意,在输入矩阵时,MATLAB 允许方括号中嵌套方括号,例如下面的语句是合法的:
【实例】创建复数矩阵。本实例演示创建包含复数的矩阵 A,其中:
M 文件是一种可以在 MATLAB 环境下运行的文本文件,分为命令式文件和函数式文件两种。在 MATLAB 命令行窗中输入M文件的文件名,文本文件中的大型矩阵即可被输入内存中。
【实例】使用M文件创建大型矩阵。
操作步骤如下:
1) 编制一个名为 gmatrix 的矩阵。
2) 在 M 文件编辑器中编制一个名为 sample.m 的 M 文件。
注意,M 文件中的变量名与文件名不能相同,否则会造成变量名和函数名的混乱。运行 M 文件时,需要先将 M 文件 sample.m 复制到当前目录文件夹下,否则运行时无法调用。
【实例】创建生活用品矩阵。
日用商品在 3 家商店中有不同的价格,其中,毛巾价格分别为 3.5 元、4 元、5 元;脸盆价格分别为 10 元、15 元、20 元。
操作步骤如下:
1) 在文本文档中建立一个文本文件,输入以下内容(将单位量的售价用矩阵表示,行表示商店,列表示商品):
1、直接输入
在键盘上直接按行方式输入矩阵是最方便、最常用的创建数值矩阵的方法,尤其适合较小的简单矩阵。在用此方法创建矩阵时,应当注意以下几点:- 输入矩阵时要以“[ ]”为其标识符号,矩阵的所有元素必须都在方括号内。
- 矩阵同行元素之间由空格(个数不限)或逗号分隔,行与行之间用分号或回车键分隔。
- 矩阵大小不需要预先定义。
- 矩阵元素可以是运算表达式。
- 若“[ ]”中无元素,表示空矩阵。
- 如果不想显示中间结果,可以用“;”结束。
【实例】创建元素均是 15 的 3×3 矩阵。MATLAB 程序如下:
>> clear % 清除工作区的变量 >> a=[15 15 15;15 15 15;15 15 15] % 直接输入矩阵a a = 15 15 15 15 15 15 15 15 15
注意,在输入矩阵时,MATLAB 允许方括号中嵌套方括号,例如下面的语句是合法的:
>> [[1 2 3];[2 4 6];7 8 9] ans = 1 2 3 2 4 6 7 8 9结果是一个 3 阶方阵。
【实例】创建复数矩阵。本实例演示创建包含复数的矩阵 A,其中:
>> clear % 清除工作区的变量 >> A=[[1,1+i,2];[2,3+2i,1]] % 创建包含复数的矩阵A A = 1.0000 + 0.0000i 1.0000 + 1.0000i 2.0000 + 0.0000i 2.0000 + 0.0000i 3.0000 + 2.0000i 1.0000 + 0.0000i
2、利用M文件创建
当矩阵的规模比较大时,直接输入法不仅显得笨拙,而且出差错也不易修改。为了解决这些问题,可以将要输入的矩阵按格式先写入一个文本文件中,并将此文件以“m”为扩展名保存,即保存为 M 文件。M 文件是一种可以在 MATLAB 环境下运行的文本文件,分为命令式文件和函数式文件两种。在 MATLAB 命令行窗中输入M文件的文件名,文本文件中的大型矩阵即可被输入内存中。
【实例】使用M文件创建大型矩阵。
操作步骤如下:
1) 编制一个名为 gmatrix 的矩阵。
2) 在 M 文件编辑器中编制一个名为 sample.m 的 M 文件。
% sample.m % 创建一个M文件,用以输入大规模矩阵 gmatrix=[378 89 90 83 382 92 29; 3829 32 9283 2938 378 839 29; 388 389 200 923 920 92 7478; 3829 892 66 89 90 56 8980; 7827 67 890 6557 45 123 35]3) 运行 M 文件。在 MATLAB 命令行窗口中输入文件名之后,按 Enter 键得到结果。
>> clear % 清除工作区的变量 >> sample % 运行M文件sample.m gmatrix = 1至5列 378 89 90 83 382 3829 32 9283 2938 378 388 389 200 923 920 3829 892 66 89 90 7827 67 890 6557 45 6至7列 92 29 839 29 92 7478 56 8980 123 35在实际应用中,上例中的矩阵还不算“大型”矩阵,此处只是借例说明。
注意,M 文件中的变量名与文件名不能相同,否则会造成变量名和函数名的混乱。运行 M 文件时,需要先将 M 文件 sample.m 复制到当前目录文件夹下,否则运行时无法调用。
>> sample在当前文件夹或 MATLAB 路径中未找到 'sample',但它位于:
C:\Program Files\Polyspace\R2020a\bin\yuanwenjian更改 MATLAB 当前文件夹或将其文件夹添加到 MATLAB 路径。
3、利用文本创建
MATLAB 中的矩阵还可以由文本文件创建,即在文件夹(通常为 work 文件夹)中建立 txt 文件,在命令行窗口中直接调用此文件即可。【实例】创建生活用品矩阵。
日用商品在 3 家商店中有不同的价格,其中,毛巾价格分别为 3.5 元、4 元、5 元;脸盆价格分别为 10 元、15 元、20 元。
操作步骤如下:
1) 在文本文档中建立一个文本文件,输入以下内容(将单位量的售价用矩阵表示,行表示商店,列表示商品):
3.5 4 5 10 15 202) 将文本文件以 goods.txt 命名并保存到当前目录文件夹下,然后在 MATLAB 命令行窗口中输入以下命令:
>> clear % 清除工作区的变量 >> load goods.txt % 将文本文件加载到工作区 >> goods % 输入文件名称创建矩阵 goods = 3.5000 4.0000 5.0000 10.0000 15.0000 20.0000结果创建出商品矩阵 goods。
注意,运行 M 文件时,需要先将文本文件 goods.txt 复制到当前目录文件夹下,否则运行时无法调用。