主要内容

细胞

细胞阵列

描述

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

创建

当您将数据放入单元格数组时,使用单元格阵列构造运算符创建阵列,{}

C = {1,2,3;“文本”,兰特(5,10,2),{11;22;33}}
C =2×3单元阵列{[1]} {[2]} {[3]} {'text'} {5x10x2 double} {3x1 cell}

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

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

要创建具有指定大小的单元格数组,请使用细胞功能,如下所述。

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

描述

例子

C=细胞(N.的)返回一个N.——- - - - - -N.空矩阵的单元阵列。

例子

C=细胞(sz1,…,szN的)返回A.SZ1.-By -...-SZN.空矩阵的单元阵列在其中sz1,…,szN表示每个维度的大小。例如,细胞(2,3)返回一个2 × 3单元格数组。

例子

C=细胞(SZ.的)返回大小向量的空矩阵的单元格数组SZ.定义尺寸(c).例如,电池(2 [3])返回一个2 × 3单元格数组。

D.=细胞(obj.的)转换Java数组,.NETsystem.string.system.Object.数组,或将Python序列转换为MATLAB单元数组。

输入参数

展开全部

Square Cell阵列的大小,指定为整数值。

  • 如果N.0., 然后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

大小,指定为整数的行向量。每个元素SZ.表示相应维度的大小。

  • 如果任何维度的大小是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类型数组system.string.system.Object.

  • 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'} {'2017-08-17'} {[58 69 79]} {'2017-08-18'} {[60 68 81]} {[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 = cell(3)
C =3×3个单元阵列{0x0 double} {0x0 double} {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];sz =尺寸(a);c = cell(sz)
C =3×2单元阵列{0x0 double} {0x0 double} {0x0 double} {0x0 double} {0x0 double} {0x0 double}

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

C =单元格(大小(a));

提示

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

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

兼容性的考虑

展开全部

R2019A的行为发生了变化

扩展能力

之前介绍过的R2006a