cell2mat
将元胞数组转换为基础数据类型的普通数组
说明
示例
将元胞数组转换为数值数组
将一个元胞数组的四个元胞中的数值数组转换为一个数值数组。
C = {[1], [2 3 4]; [5; 9], [6 7 8; 10 11 12]}
C=2×2 cell array
{[ 1]} {[ 2 3 4]}
{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'
输入参数
C
— 输入元胞数组
元胞数组
输入元胞数组,其中所有元胞都包含同一数据类型。cell2mat
接受 C
的元胞中的数值数据、逻辑数据或字符数据,或者包含相同字段名称和数据类型的结构体。cell2mat
不接受 C
中的对象或嵌套元胞。
扩展功能
tall 数组
对行数太多而无法放入内存的数组进行计算。
此函数完全支持 tall 数组。有关详细信息,请参阅 tall 数组。
C/C++ 代码生成
使用 MATLAB® Coder™ 生成 C 代码和 C++ 代码。
用法说明和限制:
对于包含稀疏数组的无界或可变大小元胞数组,
cell2mat
不支持代码生成。使用
cell2mat
函数生成代码时,不支持维度大于 2 的无界或可变大小元胞数组输入中存在数组或结构体。对于运行时空元胞输入,
cell2mat
返回相同数据类型的空元胞。对于编译时空元胞输入,cell2mat
返回类型为double
的空元胞。
基于线程的环境
使用 MATLAB® backgroundPool
在后台运行代码或使用 Parallel Computing Toolbox™ ThreadPool
加快代码运行速度。
此函数完全支持基于线程的环境。有关详细信息,请参阅在基于线程的环境中运行 MATLAB 函数。
分布式数组
使用 Parallel Computing Toolbox™ 在集群的组合内存中对大型数组进行分区。
此函数完全支持分布式数组。有关详细信息,请参阅使用分布式数组运行 MATLAB 函数 (Parallel Computing Toolbox)。
版本历史记录
在 R2006a 之前推出
另请参阅
mat2cell
| num2cell
| cell
| cell2table
| cell2struct
| struct2cell
| table2cell
| iscell
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)