2013-05-28 40 views
0

我有一個矢量A 400個值,我需要另一個矢量B與100個值,其中每個值是A中相應的4個值的平均值。例如,B的第一個值將是A的第一到第四個值的均值,B的第二個值將是第5到第8個值的平均值,如A等等。我怎樣才能在MATLAB中做到這一點?如何用另一個方法來計算矢量?

非常感謝!

回答

4

如果A是您的400x1矢量,您可以reshape將它轉換爲四列的矩陣,並應用mean

A_means = mean(reshape(A(:), 4, [])); 

這工作,因爲mean沿着列工作,如果沒有特別說明。

+1

非常感謝你:

如果向量不是四的整數倍我已經擴展它一點,所以它也將工作! – Jorgejuan3452

1

這是另一種解決方案。

A = 1:399; 

B = NaN(4,ceil(length(A)/4)); 
B(1:length(A))=A; 
nanmean(B) 
相關問題