如何创建数组,索引数组
第一步:首先我们需要创建一个数组或矩阵,如我们在MATLAB命令窗口中输入代码:
a=[1 2 3 4;5 6 7 8;9 10 11 12;13 14 15 16;17 18 19 20]
即可创建一个4行4列的数组,如下图所示。
第二步:数组创建好后我们就可以进行数组或矩阵索引了,我们索引数组或矩阵时可以精确索引某行某列的元素,如我们在MATLAB命令窗口中输入代码:
a(2,3)
即可精确索引出第2行第3列的元素,如下所示,索引结果为7。
第三步:我们需要索引出上面第2行第3列的元素还可以使用线性索引,即输入单值索引,是按单一下标按顺序向下遍历每一列。如果数组或矩阵较大的话可以先计算数组或矩阵的大小,然后利用尺寸进行帮助我们计算。
线性索引代码如:
a(12)
同样可以索引得到第2行第3列的元素值7,如下图所示。
第四步:我们在索引数组或矩阵的时候注意不要索引超过矩阵或数组的大小,否则会程序报错,我们可以使用size或length先计算好数组或矩阵的大小。
如我们在命令窗口中输入代码:
a(6,2)
运行结果是索引不到值的,报错索引超出矩阵维度,如下图所示。
第五步:不过我们可以往超出矩阵维度的地方进行插值,MATLAB会自动修改我们的数组或矩阵尺寸,如我们在命令行窗口中输入代码:
a(6,2)= 8
运行结果如下图所示,是不会报错且自动调整数组或矩阵尺寸的。
第六步:我们可以直接索引数组或矩阵中的元素然后对其他变量元素进行赋值,该变量元素事先最好先定义大小或初始化,否则可能会报错,如我们在MATLAB中输入代码:
b=a(2,3)
可以将数组或矩阵a中第2行第3列的元素赋值给b,如下图所示。
第七步:我们可以使用冒号:来索引start到end的元素,格式为start:end ,如我们在命令窗口中输入代码:
a(2:5,3)
即可索引出数组或矩阵a的第3列第2行到第5行元素值,运行结果如下图所示。
第八步:我们使用单独冒号的话就可以索引出某一行或某一列的元素值,如我们在MATLAB命令窗口中输入代码:
a(2,:)
即可索引出数组或矩阵a的第2行的元素值。
在MATLAB命令窗口中输入代码:
a(:,3)
即可索引出数组或矩阵a的第3列的元素值。
运行结果如下图所示。
第九步:关于创建等距数组或矩阵,我们可以使用格式 start:step:end来创建,如我们在命令窗口中输入代码:
b = 1:2:10
即可创建一个从1到10,步长为2的等距数组或矩阵,如下图所示。