我想執行一個binning平均值。我正在使用的代碼:我應該如何在MATLAB中執行這種分檔和平均?
Avg = mean(reshape(a,300,144,27));
AvgF = squeeze(Avg);
最後一行刪除了單例尺寸。
所以可以看出我平均超過300點。除了時間點總數不等於144 * 300的倍數時,它工作正常。
即使總點數不是144 * 300的倍數,是否有任何方法可以使此分檔平均值工作?
編輯:對不起,如果我的問題聽起來令人困惑。澄清...
我有一個43200行和27列的文件。我通過一次處理300行來平均,這意味着最後我剩下一個大小爲的矩陣,大小爲144乘以27。
我上面寫的代碼只有當我有43200行時才起作用。在某些情況下,我有43199,43194等等。當我有一個300的倍數(bin大小)的行的總數時,重塑功能起作用。當我的總行數不是300的倍數時,是否有辦法讓這個分箱平均值工作?
不知道數據是什麼樣的,一個想法是用'NaN'填充你的數組以達到所需的大小,並使用'nanmean',它和'mean'一樣只忽略NaN值。 – Amro 2009-11-24 01:24:18
你會有多少總積分?一個或兩個?數百?成千上萬的? – gnovice 2009-11-24 06:03:50
在一些文件中,我有86399,其他86395等,相比之下,這是我需要一整天的86400。就像我寫它的工作原理,如果我刪除更多的點,使其等於143 * 300,但我必須手動檢查和刪除點。 所以我想知道是否有一種方法來完成它 – 2009-11-24 13:57:30