matlab怎样合并元胞数组

比如 四个元胞数组M={’a‘; ’b‘; ’c‘} N={’e‘;’ f‘; ’g‘} P={’r‘} Q={’h‘}
怎样 合并成{M N; P Q}即{’a‘ ’e‘; ’b‘ 'f'; ’c‘ 'g'; 'r' 'h'}的形式,一个4*2维的元胞数组而不是2*2维的
最新回答
我污但不色

2024-04-18 09:06:38

直接用 [M N;P Q] 就可以了。

请注意:

中括号
用于数组拼接,不仅适用于数值型的数组,也适用于cell和struct等等,包括类,比如
传递函数
tf。

代码:

M={'a';'b';'c'};

N={'e';'f';'g'};

P={'r'};

Q={'h'};

[M N;P Q]

胞元数组(cell Arry)的基本组分是胞元(cell),每个胞元本身在数组中是平等的,只能以下标区分。胞元可以存放任何类型、任何大小的数组。

如任意维数值数组、

字符串
数组、符号对象等,而且同一个胞元数组中各胞元中的内容可以不同。与数值数组一样,胞元数组维数不受限制,可以一维、二维或更高维。

不过一维胞元数组用得最多;胞元数组对胞元的编址方法也有单下标编址和全下标编址两种。

↘琪子

2024-04-18 10:50:00

楼上的两位都搞太复杂了吧?
直接用 [M N;P Q] 就可以了。
请注意:中括号用于数组拼接,不仅适用于数值型的数组,也适用于cell和struct等等,包括类,比如传递函数tf。

代码:
M={'a';'b';'c'};
N={'e';'f';'g'};
P={'r'};
Q={'h'};
[M N;P Q]
铭华丶族丿主宰

2024-04-18 09:35:10

M={'a';'b';'c'};
N={'e';'f';'g'};
P={'r'};
Q={'h'};
A=[[M;P] [N;Q]]

A =
'a' 'e'
'b' 'f'
'c' 'g'
'r' 'h'
天堂若比邻°く

2024-04-18 11:21:10

题目描述能不能详细一点啊
世界等同你

2024-04-18 13:16:56

胞元数组(cell Arry)的基本组分是胞元(cell),每个胞元本身在数组中是平等的,只能以下标区分。胞元可以存放任何类型、任何大小的数组,如任意维数值数组、字符串数组、符号对象等,而且同一个胞元数组中各胞元中的内容可以不同。与数值数组一样,胞元数组维数不受限制,可以一维、二维或更高维,不过一维胞元数组用得最多;胞元数组对胞元的编址方法也有单下标编址和全下标编址两种。下面我们就讲解一下胞元数组的创建,以及简单用法。

工具/原料
可正常运行的电脑
matlab软件
方法/步骤
产生数据
在创建胞元数组之前我们先用指令产生不同大小、不同类型的数据,以备后面创建胞元数组使用。具体创建代码及结果如下图所示:

创建胞元数组
对胞元数组来说,在胞元数组中,胞元和胞元内容是两个不同范畴的东西。因此,寻访胞元和寻访胞元中的内容是两种不同的操作。
“胞元标识(cell Indexing)”:以二维胞元数组A为例,A(2,3)是指A胞元数线中的第2行第3列胞元元素;
“胞元内容编址(Content Addressing)”:如A{2,3}是指A胞元数组第2行第3列胞元中所允许存放的内容。
注意,这两者的以别仅在于所用的括号不同。“外标识的胞元元素”用的是“圆括号”,而“编址胞元元素内涵”用的是“花括号”。下面我们就演示创建胞元数组方法之一,具体代码如下:

胞元的援引
这里要援引胞元时用的是胞元标志,及此时用的是“圆括号”,具体方法如下。从图上我们可以看出用“圆括号”时,援引的是B胞元数组中的第2行第3列胞元元素,而不是第2行第3列胞元存放的内容。而且数据类型为“胞元”。

胞元内容的援引
这里我们援引胞元内容,即使用的是“花括号”。此时援引的是存放在B胞元数组中的第2行第3列胞元的具体内容。下面我们看一下援引胞元内容的具体结果,具体的代码和援引结果请看下图所示:

小 结
1.第二步是创建胞元数组的方法之一,常用于创建小型胞元数组。
2.“圆括号”援引的是胞元,所以a是“cell”型;“花括号”援引的是胞元内容,所以b是“双精度double”型。
3.胞元数组更有效地创建方法是,借助cell指令预定义胞元空数组。