2013-07-24 73 views
0

如果我有一個大小爲3975 x 12的矩陣P,並帶有下面給出的下載鏈接。每列P中的行數爲而非NaN3975/sizesBlock給出,其中sizesBlock[1 3 5 15 25 53 75 159 265 795 1325 3975]。如何替換所有包含NaN的列,以使j列中的每個數字重複sizesBlock(j)次。有沒有快速/有效的方式來做到這一點?謝謝。Matlab:最簡單/高效的方式來擴展矩陣中的每個數據

矩陣P可以下載from here

+0

鏈接不適合我。 – MZimmerman6

+1

當我正在嘗試時它正在工作.. – Pupil

回答

0
iSeries = 1; 
for iBlock = sizesBlock 
    temp = repmat(P(1:(sizesBlock(end)/iBlock), iSeries), iBlock, 1); 
    temp = reshape(reshape(temp, (sizesBlock(end)/iBlock), iBlock)', sizesBlock(end), 1); 
    modifiedP(:, iSeries) = temp; 
    iSeries = iSeries + 1; 
end