2014-06-09 163 views
-1

我有一個長度爲185437的大型矢量,我想製作一個新的,用這個平均值重新定形的矢量,但我需要新的長度爲180 *延遲,因爲在x軸上我必須這樣做,因爲例如:如何從較大的矢量製作較小的矢量...? MATLAB

delay=0.1 
    x_axis=0:delay:180 

我需要y軸(這個新的向量)與這個x_axis大小相同,所以我可以繪製它。 我試過類似的東西:

values_delay_sum_plot=mean(reshape(values_delay_sum,1/delay,length(values_delay_sum)*delay)); 

但它不工作。第一個錯誤是整數值,後來我不能改變矢量的大小。請注意,values_delay_sum是我的大矢量,從它我想爲我的情節做一個新的。 在此先感謝。

+3

請更好地解釋你想要什麼 –

+0

親愛的,我需要調整我的大矢量的大小,以便能夠在x軸0:0.1:180的這些條件下繪製它。不像values_delay_sum(1:1800)那樣調整它的大小。我想在這個較小的平面中有大的矢量的平均值,所以我不會失去分析的統計重要性。 – user3464577

+0

如果你看看你的數據:'length(Values_delay_sum)* delay'是'185437 * 0.1 = 18 543.7',這不是一個可以用於'reshape'的整數。當你重塑形狀時,尺寸不能改變。 – Vuwox

回答

0

正如@Schorsch所說,我認爲你需要interp1功能。也許是這樣的:

x_axis=linspace(0,185437,1801); 
y_axis=interp1(values_delay_sum,x_axis); 
plot(x_axis,y_axis); 

如果你只想來繪製新的載體,但不與對應原X_AXIS值,只是情節:

plot(y_axis)