主要内容

细胞

单元阵列

描述

一个单元阵列是否调用索引数据容器的数据类型细胞,其中每个单元格可以包含任何类型的数据。单元格数组通常包含文本列表、文本和数字的组合或不同大小的数字数组。通过在圆括号中包含索引来引用单元格集合,().通过用花括号索引来访问单元格的内容,{}

创建

当有数据要放入单元格数组时,使用单元格数组构造操作符创建数组,{}

C ={1、2、3;“文本”,兰德(5 10 2),{11;22;33}}
C =2×3单元阵列{[1]}{[2]}{[3]}{‘文本’}{5 x10x2双}{3 x1细胞}

你也可以用{}创建一个空的0 × 0单元格数组。

C = {}
C = 0x0空单元格数组

要创建具有指定大小的单元格数组,请使用细胞函数,下面描述。

您可以使用细胞预先分配单元格数组,稍后将数据分配给该单元格数组。细胞也转换某些类型的Java®.NET和Python®数据结构到单元阵列的等效MATLAB®对象。

描述

例子

C=细胞(n返回一个n——- - - - - -n空矩阵的单元格数组。

例子

C=细胞(sz1,…,szN返回一个sz1——-…——-szN空矩阵的单元格数组sz1,…,szN表示每个维度的大小。例如,电池(2、3)返回一个2 × 3单元格数组。

例子

C=细胞(深圳返回大小为vector的空矩阵单元格数组深圳定义了大小(C).例如,电池(2 [3])返回一个2 × 3单元格数组。

D=细胞(obj转换Java数组。net系统。字符串系统。对象数组,或将Python序列转换为MATLAB单元数组。

输入参数

全部展开

正方形单元格数组的大小,指定为整数值。

  • 如果n0,然后C为空单元格数组。

  • 如果n是消极的,那么它被视为0

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

单元格数组的尺寸大小,指定为整数值。

  • 如果任何尺寸是0,然后C为空单元格数组。

  • 如果任何维度的大小为负,则将其视为0

  • 在第二维度之外,细胞忽略大小为1的尾随维度。例如,细胞(3,1,1,1)生成空矩阵的3 × 1单元格数组。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

大小,指定为整数的行向量。的每个元素深圳表示相应尺寸的大小。

  • 如果任何尺寸是0,然后C为空单元格数组。

  • 如果任何维度的大小为负,则将其视为0

  • 在第二维度之外,细胞忽略大小为1的尾随维度。例如,Cell ([3 1 1 1])生成空矩阵的3 × 1单元格数组。

例子:Sz = [2 3 4]创建空矩阵的2 × 3 × 4单元格数组。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

输入数组,指定为:

  • Java数组或对象

  • .NET类型数组系统。字符串系统。对象

  • Python序列类型

输出参数

全部展开

输出数组,作为单元格数组返回。每个单元格包含一个类型为0 × 0的空数组

转换后的数组,作为单元格数组返回。

每个单元格都包含一个MATLAB对象,其类型与相应的Java最接近,net,或Python类型。有关更多信息,请参见:

例子

全部折叠

当相关数据片段具有不同的数据类型时,可以将它们放在单元格数组中。每个单元格包含一段数据。要引用单元格数组的元素,请使用数组索引。你可以使用圆括号索引单元格数组,(),并使用花括号插入单元格的内容,{}

创建包含给定日期的多个温度读数的单元阵列。将日期指定为字符向量,将温度指定为双精度数组。要将这些数据存储在单元格数组中,请将它们用花括号括起来。

C = {“2017-08-16”, [56 67 78]}
C =1×2单元阵列{'2017-08-16'} {[56 67 78]}

将不同日期的读数添加到单元格数组中。添加更多单元格的一种方法是通过赋值展开单元格数组,就像您可以展开普通数组一样。

C (2) = {“2017-08-17”(58 69 79)};C (3) = {“2017-08-18”, 60 68 81}
C =3×2单元阵列{' 2017-08-16 '}{[56 67 78]}{‘2017-08-17’}{[58 69 79]}{‘2017-08-18’}{[60 68 81]}

的第一行索引C.当你用圆括号索引时,(),其结果是单元格数组的子集单元格数组。

: C (1)
ans =1×2单元阵列{'2017-08-16'} {[56 67 78]}

索引到单元格的内容。当你用花括号索引时,{},结果是包含在指定单元格中的数据块。

C {1,2}
ans =1×356 67 78

创建一个空矩阵的3 × 3单元格数组。

C =细胞(3)
C =3×3单元阵列{0x0 double} {0x0 double} {0x0 double} {0x0 double} {0x0 double} {0x0 double} {0x0 double} {0x0 double} {0x0 double}

创建一个由空矩阵组成的3 × 4 × 2单元格数组。

C =细胞(3、4、2);大小(C)
ans =1×33 4 2

创建空矩阵的单元格数组,其大小与现有数组相同。

A = [7 9;2 1;8 3];深圳=大小(A);C =电池(深圳)
C =3×2单元阵列{0x0 double} {0x0 double} {0x0 double} {0x0 double} {0x0 double}

将前两行代码合并为一行是一种常见的模式。

C =细胞(大小(A));

提示

  • 属性创建空矩阵的单元格数组细胞函数等价于将空矩阵赋给新单元格数组的最后一个索引。例如,这两个语句是等价的:

    C =细胞(3、4、2);C{3、4、2}= [];

兼容性的考虑

全部展开

行为在R2019a中改变

扩展功能

之前介绍过的R2006a