Matlab中cell2mat函数使用

目录

语法

说明

示例

将元胞数组转换为数值数组

将结构体元胞数组转换为数组


        cell2mat函数是将元胞数组转换为基础数据类型的普通数组。

语法

A = cell2mat(C)

        输入元胞数组,其中所有元胞都包含同一数据类型。cell2mat 接受 C 的元胞中的数值数据、逻辑数据或字符数据,或者包含相同字段名称和数据类型的结构体。cell2mat 不接受 C 中的对象或嵌套元胞。

说明

A = cell2mat(C) 将元胞数组转换为普通数组。元胞数组的元素必须全都包括相同的数据类型,并且生成的数组也是该数据类型。

C 的内容必须支持串联到 N 维矩形中。否则,结果将不确定。例如,同一列中的元胞的内容必须具有相同的列数,但不需要具有相同的行数(见图)。

扫描二维码关注公众号,回复: 13474748 查看本文章

示例

将元胞数组转换为数值数组

        将一个元胞数组的四个元胞中的数值数组转换为一个数值数组。

C = {[1],    [2 3 4];
     [5; 9], [6 7 8; 10 11 12]}
C=2×2 cell array
    {[       1]}    {1x3 double}
    {2x1 double}    {2x3 double}

A = cell2mat(C)
A = 3×4

     1     2     3     4
     5     6     7     8
     9    10    11    12

将结构体元胞数组转换为数组

        将元胞数组中的结构体转换为一个结构体数组。这些结构体必须包含相同的字段。

s1.a = [1 2 3 4];
s1.b = 'Good';
s2.a = [5 6; 7 8];
s2.b = 'Morning';
c = {s1,s2};
d = cell2mat(c)
d=1×2 struct array with fields:
    a
    b

        显示结构体 d(1) 的第一个字段。

d(1).a
ans = 1×4

     1     2     3     4

        显示 d(2) 的第二个字段。

d(2).b

ans = 
'Morning'

猜你喜欢

转载自blog.csdn.net/jk_101/article/details/110935218