matlab中cell用法
时间: 2023-09-20 14:12:35 浏览: 85
在 MATLAB 中,cell(cell array)是一种特殊的数组类型,可以存储不同类型的数据,例如字符串、数值、逻辑、结构体等等,甚至可以存储其他的 cell 数组。下面是一些 cell 的用法示例:
### 创建 cell 数组
可以使用花括号 `{}` 来创建 cell 数组,例如:
```matlab
% 创建一个 1 行 3 列的 cell 数组,分别存储数字、字符串和逻辑值
c1 = {42, 'hello', true};
% 创建一个 2 行 2 列的 cell 数组,分别存储两个数值矩阵
c2 = {magic(3), ones(2, 2)};
```
### 访问 cell 数组元素
可以使用花括号 `{}` 或括号 `()` 访问 cell 数组的元素,例如:
```matlab
% 访问第一个 cell 数组的第二个元素
c1{2}
% 访问第二个 cell 数组的第一个元素的第二行第三列
c2{1}(2, 3)
```
### 拼接 cell 数组
可以使用花括号 `{}` 和括号 `()` 来拼接 cell 数组,例如:
```matlab
% 拼接两个行向量为一个行向量的 cell 数组
c3 = {1, 2, 3};
c4 = {4, 5, 6};
c5 = [c3, c4];
% 拼接两个列向量为一个列向量的 cell 数组
c6 = {1; 2; 3};
c7 = {4; 5; 6};
c8 = [c6; c7];
```
### 遍历 cell 数组
可以使用 `for` 循环遍历 cell 数组的每个元素,例如:
```matlab
% 遍历一个 cell 数组,输出每个元素的类型和值
c9 = {42, 'hello', true};
for i = 1:length(c9)
fprintf('元素 %d 是 %s 类型,值为 %s\n', i, class(c9{i}), num2str(c9{i}));
end
```
上述示例代码中,我们使用 `class()` 函数获取每个元素的类型,并使用 `num2str()` 函数将每个元素转换为字符串。注意在遍历 cell 数组时,需要使用括号 `()` 而不是花括号 `{}` 来访问元素。
这些是 cell 数组的一些常见用法,希望能对您有所帮助。
阅读全文