我有一個大小爲(A)= 20x301088的矩陣和另一個爲301088x1的矢量linear_index。 我需要將A轉換爲97x97x32x20的數組。但它必須按照特定的順序,向量linear_index包含特定順序的97x97x32的線性索引。將矩陣轉換爲數組
例如,A(20,4)處的元素應放入B(:,:,:,20)的linear_index(4)中。希望這是有道理的。 A的每一行都將製作自己的97x97x32矩陣,並且元素將放置在由linear_index中的值指定的索引處。
我曾經做過它,但它需要shiftdim命令:
B(1:長度(LX),linear_index)= A(1:長度(LX),:); B = shiftdim(A,1);
這可行,但shiftdim命令需要一點時間,特別是因爲我的矩陣的大小可以達到97x97x32x194。
是什麼呢? Matlab,Octave?你應該清楚地指出,用一個合適的標籤 – piokuc
我的歉意,這是我第一次使用這個網站。謝謝。這是Matlab,但我已經想出瞭解決方案。 –