我试图重塑数组,执行操作然后将其重新整形为原始数据。请参阅我试图获得的输出示例。我可以a
和b
,但我无法让c
再次看起来像a
。
步骤1)(原始数组)
1 1 1
2 2 2
3 3 3
4 4 4
5 5 5
步骤2)(重塑并执行一些操作)
1,1,1,2,2,2,3,3,3,4,4,4,5,5,5
步骤3)(数组重新变形为原始大小,看起来像step 1
)这就是我想要的
1 1 1
2 2 2
3 3 3
4 4 4
5 5 5
我可以获取变量a
和b
,但我不确定如何将c
的{{1}}重新塑造为再次看起来像b
参见
a
Ps:我使用Octave 4.0,就像Matlab一样。
答案 0 :(得分:1)
MATLAB和Octave使用列主要排序,因此您需要重新考虑结果。数据将首先填充列,但您希望它首先填充列。要实现此目的,您可以将列数指定为提供给reshape
的行数,然后转置结果
c = reshape(b, 3, []).'
或更灵活
c = reshape(b, flip(size(a))).'