Matlab:2d阵列,行长不同

Kar*_*rus 5 matlab jagged-arrays

在Matlab中,我想创建一个二维数组.但是,我无法创建矩阵,因为行的长度都不同.

我是Matlab的新手,我通常会在C++中通过创建指针数组来实现这一点,每个指针都指向自己的数组.

我应该如何在Matlab中做到这一点?谢谢.

her*_*tao 9

您可以使用单元格数组,它可以包含不同类型和大小的数据.

像这样:

data = {[1]; [2,2]; [3,3,3]};
Run Code Online (Sandbox Code Playgroud)

点击这里查看更多示例.


Dan*_*Dan 5

您可以使用元胞数组

C = {[1,2,3];
     [1,2,3,4,5];
     [1,2]};
Run Code Online (Sandbox Code Playgroud)

或者用NaNor 0Inf等填充

N = [1, 2, 3,   NaN, NaN;
     1, 2, 3,   4,   5;
     1, 2, NaN, NaN, NaN]
Run Code Online (Sandbox Code Playgroud)

这实际上取决于您下一步将如何处理数据