0

我有一个 3861 x 1 的列向量,其中包含一些数值。我想在 matlab 中将此向量转换为维度为 40 x 100 的矩阵。代码必须在一列中填充前 40 个值,然后移动到下一列。谁能帮我吗??

4

1 回答 1

2

您可以使用 matlab 中的 reshape 函数重新排列矩阵中的元素。但是只有在元素数量不变的情况下才能这样做。因此,如果您有一个 4000x1 的矩阵,您可以使用 reshape 将其更改为 40x100。所以,我想理想的方法是将你的 3861x1 矩阵用零(或任何你想用它填充的东西)填充到一个 4000x1 矩阵,然后重塑它。

看到这个:

    a = rand(3861, 1);
    b = cat(1, a, zeros(139, 1));
    c = reshape(b, 40, 100);
于 2012-12-05T09:06:16.927 回答