本页对应的英文页面已更新,但尚未翻译。 若要查看最新内容,请点击此处访问英文页面。

cell2table

将元胞数组转换为表

说明

T = cell2table(C)m×n 元胞数组 C 的内容转换为 m×nTC 的每一列提供 T 的一个变量中包含的数据。

要在输出表中创建变量名称,cell2table 需要将列号追加到输入数组名称后面。如果输入数组没有名称,cell2table 将创建 'Var1',...,'VarN' 形式的变量名称,其中 NC 中的列数。

示例

T = cell2table(C,Name,Value) 通过由一个或多个 Name,Value 对组参数指定的其他选项基于元胞数组 C 创建表。

例如,您可以指定要包含在表中的行名称或变量名称。

示例

全部折叠

创建一个包含字符向量和数值数据的元胞数组。

C = {5 'cereal' 110 'C+'; 12 'pizza' 140 'B';...
    23 'salmon' 367 'A'; 2 'cookies' 160 'D'}
C=4×4 cell
    {[ 5]}    {'cereal' }    {[110]}    {'C+'}
    {[12]}    {'pizza'  }    {[140]}    {'B' }
    {[23]}    {'salmon' }    {[367]}    {'A' }
    {[ 2]}    {'cookies'}    {[160]}    {'D' }

将元胞数组 C 转换为表并指定变量名称。

T = cell2table(C,...
    'VariableNames',{'Age' 'FavoriteFood' 'Calories' 'NutritionGrade'})
T=4×4 table
    Age    FavoriteFood    Calories    NutritionGrade
    ___    ____________    ________    ______________

     5     {'cereal' }       110           {'C+'}    
    12     {'pizza'  }       140           {'B' }    
    23     {'salmon' }       367           {'A' }    
     2     {'cookies'}       160           {'D' }    

变量 T.AgeT.Calories 是数值,而变量 T.FavoriteFoodT.NutritionGrade 是字符向量元胞数组。

将元胞数组转换为表,然后包括元胞数组的第一行作为表的变量名称。

创建一个元胞数组,其中第一行包含用于标识列标题的字符向量。

Patients = {'Gender' 'Age' 'Height' 'Weight' 'Smoker';...
    'M' 38 71 176 true;...
    'M' 43 69 163 false;...
    'M' 38 64 131 false;...
    'F' 38 64 131 false;...
    'F' 40 67 133 false;...
    'F' 49 64 119 false}
Patients=7×5 cell
    {'Gender'}    {'Age'}    {'Height'}    {'Weight'}    {'Smoker'}
    {'M'     }    {[ 38]}    {[    71]}    {[   176]}    {[     1]}
    {'M'     }    {[ 43]}    {[    69]}    {[   163]}    {[     0]}
    {'M'     }    {[ 38]}    {[    64]}    {[   131]}    {[     0]}
    {'F'     }    {[ 38]}    {[    64]}    {[   131]}    {[     0]}
    {'F'     }    {[ 40]}    {[    67]}    {[   133]}    {[     0]}
    {'F'     }    {[ 49]}    {[    64]}    {[   119]}    {[     0]}

排除列标题并将元胞数组的内容转换为表。

C = Patients(2:end,:);
T = cell2table(C)
T=6×5 table
     C1      C2    C3    C4      C5  
    _____    __    __    ___    _____

    {'M'}    38    71    176    true 
    {'M'}    43    69    163    false
    {'M'}    38    64    131    false
    {'F'}    38    64    131    false
    {'F'}    40    67    133    false
    {'F'}    49    64    119    false

T 具有变量名称 C1,...,C5

通过将表属性 T.Properties.VariableNames 设置为元胞数组的第一行来更改变量名称。

T.Properties.VariableNames = Patients(1,:)
T=6×5 table
    Gender    Age    Height    Weight    Smoker
    ______    ___    ______    ______    ______

    {'M'}     38       71       176      true  
    {'M'}     43       69       163      false 
    {'M'}     38       64       131      false 
    {'F'}     38       64       131      false 
    {'F'}     40       67       133      false 
    {'F'}     49       64       119      false 

输入参数

全部折叠

输入元胞数组,指定为二维元胞数组。C 的每一列为一个表变量提供数据。

  • 如果 C 的一列中各单元格的内容具有兼容的大小和类型,则对应的表变量是由这些内容垂直串联而形成的数组。

  • 如果一列中各单元格的内容具有不同的大小和类型,则对应的表变量是元胞数组。

    • 如果一列中各单元格的内容都是字符向量,则对应的表变量是字符向量元胞数组。

名称-值对组参数

指定可选的、以逗号分隔的 Name,Value 对组参数。Name 为参数名称,Value 为对应的值。Name 必须放在引号中。您可采用任意顺序指定多个名称-值对组参数,如 Name1,Value1,...,NameN,ValueN 所示。

示例: 'RowNames',{'row1','row2','row3'} 将行名称 row1row2row3 用于表 T

T 的行名称,指定为以逗号分隔的对组,其中包含 'RowNames' 和一个由非空的不同元素构成的字符向量元胞数组或字符串数组。名称的数量必须等于行数 size(C,1)

T 的变量名称,指定为以逗号分隔的对组,其中包含 'VariableNames' 和一个由非空的不同元素构成的字符向量元胞数组或字符串数组。名称的数量必须等于变量数 size(C,2)

变量名称可以包含任何 Unicode® 字符,包括空格和非 ASCII 字符。

输出参数

全部折叠

输出表,以表形式返回。该表可以存储元数据,比如说明、变量单位、变量名称和行名称。有关详细信息,请参阅 table 的“属性”部分。

兼容性考虑

全部展开

R2019b 中的行为有变化

扩展功能

在 R2013b 中推出