目录
多维数组
matlab环境中的多维数组是具有多个下标的数组并且一个三维数组由行、列和页三维组成,其中每一页包含一个由行和列构成的二维数组。这里我介绍创建多维数组的一种方法,我们可以利用之前讲到过的zeros、ones、randn函数来创建多维数组。
x = randn(3,4,5)
执行结果
这里我们看到赋给了x的那个语句,括号的里的前两个数,分别代表的是三行四列。最后一个数代表的是维度数,所以我们就成功的创建了一个五维数组,其中共包含3*4*5=60个正态分布的随机元素。
元胞数组
元胞数组是matlab中特有的一种数据类型,是数组的一种,其内部元素可以是属于不同的数据类型,并且matlab中的元胞数组是以其他数组的副本为元素的多维数组。使用cell函数可以创建空矩阵的元胞数组。但是,更普遍的做法是,通过将其他内容的集合括入花括号{}中来创建元胞数组。花括号还可以与下标配合使用,以便访问各个元胞的内容。
x = {'xiaoming' 'zhangsan' 'lisi'}
执行结果
这里我们生成了一个1×3的元胞数组,这三个元胞所包含的都是字符,我们还可以将它们的数据类型换成其它的数据类型,如:
x = {magic(3) 'zhangsan' 4}
执行结果
这里第一个元胞太大,无法在有限的空间内输出,但是第三个元胞只含有一个数字,因此有空间可以输出此数字。
大家请牢记以下两大要点:
第一,要检索某个元胞的内容,请在花括号中使用下标。例如,x{1}检索幻方矩阵,x{3}为4。
第二,元胞数组包含其他数组的副本,而不包含指向这些数组的指针。如果随后更改x不会发生变化。
我们使用三维数组可以存储相同大小的矩阵序列而元胞数组可用于存储不同大小的矩阵序列。现在,我就来举个例子说明一下:
x = c