Arrays 我应该为这个matlab数组使用哪种结构

Arrays 我应该为这个matlab数组使用哪种结构,arrays,matlab,multidimensional-array,Arrays,Matlab,Multidimensional Array,我开始开发一个经常使用多维数组的项目。 我的数组大多是2维、3维左右的。 作为一个二维数组样本,考虑A’,我可能在单元中有2个或更多个一维数组。 类似 A=[1, [78,9] [10,65], 9; 2 , 3 , 6; 7 , [9,1] , [91,41,96][10,-1]] 正如您在“A(1,2)”中看到的,有两个1D数组。 我不知道我应该用哪种结构来实现这样的目标。 此外,我希望能够访问所有这些1D阵列 请与我分享您的知识。这取决于您希望

我开始开发一个经常使用多维数组的项目。 我的数组大多是2维、3维左右的。 作为一个二维数组样本,考虑A’,我可能在单元中有2个或更多个一维数组。

类似

A=[1, [78,9] [10,65], 9;
   2 ,       3 ,      6;
   7 ,      [9,1] , [91,41,96][10,-1]]
正如您在“A(1,2)”中看到的,有两个1D数组。 我不知道我应该用哪种结构来实现这样的目标。 此外,我希望能够访问所有这些1D阵列


请与我分享您的知识。

这取决于您希望如何使用这种结构。您可以为每个1d数组条目使用单元格数组,并创建此类单元格数组的矩阵:

a = {1, 2};
b = {-1, 4, 6};
M = [a b];

或者,您可以定义一个稀疏的3d数组。

这取决于您想对这种结构做什么。您可以为每个1d数组条目使用单元格数组,并创建此类单元格数组的矩阵:

a = {1, 2};
b = {-1, 4, 6};
M = [a b];

或者,您可以定义一个稀疏的3d数组。

这取决于您想对这种结构做什么。您可以为每个1d数组条目使用单元格数组,并创建此类单元格数组的矩阵:

a = {1, 2};
b = {-1, 4, 6};
M = [a b];

或者,您可以定义一个稀疏的3d数组。

这取决于您想对这种结构做什么。您可以为每个1d数组条目使用单元格数组,并创建此类单元格数组的矩阵:

a = {1, 2};
b = {-1, 4, 6};
M = [a b];

或者,您可以定义一个稀疏的3d数组。

尝试使用
cell
struct
我建议使用
cell

例如,预初始化
A1

A1=cell(3,3)
(这将是一个3x3单元阵列/矩阵)。然后可以用花括号({})来寻址元素。例如:

两者都有效。也可以在一行中定义多个单元格。例如:

A1(2,:) = {2,3,6};
对于具有多数组项的情况,请使用另一个单元格结构:

B= {[78,9], [10,65]};
A1(1,2) = {B};
等等。注意在
B
(或
A1
中的坐标)周围使用花括号!否则,他会尝试合并
A1
B
的单元格,但这不会有任何好处,因为
B
是1x2单元格,您希望将其作为
A1
中一个单元格的参数

如果要返回单元格内的值,必须再次使用花括号:

 A1{1,1}

将返回1。

尝试使用
cell
struct
我建议使用
cell

例如,预初始化
A1

A1=cell(3,3)
(这将是一个3x3单元阵列/矩阵)。然后可以用花括号({})来寻址元素。例如:

两者都有效。也可以在一行中定义多个单元格。例如:

A1(2,:) = {2,3,6};
对于具有多数组项的情况,请使用另一个单元格结构:

B= {[78,9], [10,65]};
A1(1,2) = {B};
等等。注意在
B
(或
A1
中的坐标)周围使用花括号!否则,他会尝试合并
A1
B
的单元格,但这不会有任何好处,因为
B
是1x2单元格,您希望将其作为
A1
中一个单元格的参数

如果要返回单元格内的值,必须再次使用花括号:

 A1{1,1}

将返回1。

尝试使用
cell
struct
我建议使用
cell

例如,预初始化
A1

A1=cell(3,3)
(这将是一个3x3单元阵列/矩阵)。然后可以用花括号({})来寻址元素。例如:

两者都有效。也可以在一行中定义多个单元格。例如:

A1(2,:) = {2,3,6};
对于具有多数组项的情况,请使用另一个单元格结构:

B= {[78,9], [10,65]};
A1(1,2) = {B};
等等。注意在
B
(或
A1
中的坐标)周围使用花括号!否则,他会尝试合并
A1
B
的单元格,但这不会有任何好处,因为
B
是1x2单元格,您希望将其作为
A1
中一个单元格的参数

如果要返回单元格内的值,必须再次使用花括号:

 A1{1,1}

将返回1。

尝试使用
cell
struct
我建议使用
cell

例如,预初始化
A1

A1=cell(3,3)
(这将是一个3x3单元阵列/矩阵)。然后可以用花括号({})来寻址元素。例如:

两者都有效。也可以在一行中定义多个单元格。例如:

A1(2,:) = {2,3,6};
对于具有多数组项的情况,请使用另一个单元格结构:

B= {[78,9], [10,65]};
A1(1,2) = {B};
等等。注意在
B
(或
A1
中的坐标)周围使用花括号!否则,他会尝试合并
A1
B
的单元格,但这不会有任何好处,因为
B
是1x2单元格,您希望将其作为
A1
中一个单元格的参数

如果要返回单元格内的值,必须再次使用花括号:

 A1{1,1}

将返回1。

假设这些数字和子数组有意义,我将它们放在结构中并给它们一些有意义的名称…假设这些数字和子数组有意义,我将它们放在结构中并给它们一些有意义的名称…假设这些数字和子数组有意义,我会把它们放在结构中,给它们一些有意义的名字…假设那些数字和子数组有意义,我会把它们放在结构中,给它们一些有意义的名字…我更喜欢
A1{1,2}=B
而不是
A1(1,2)={B}
。避免了普通1x1单元数组的中间创建。@sebastian您能详细说明一下吗?我还没有真正了解这两种符号之间的区别,我现在正在自学matlab。我更喜欢
A1{1,2}=B
而不是
A1(1,2)={B}
。避免了普通1x1单元数组的中间创建。@sebastian您能详细说明一下吗?我还没有真正了解这两种符号之间的区别,我现在正在自学matlab。我更喜欢
A1{1,2}=B
而不是
A1(1,2)={B}
。避免了普通1x1单元数组的中间创建。@sebastian您能详细说明一下吗?我还没有真正了解这两种符号之间的区别,我在自学材料