数据矩阵的时间平均值

时间:2016-07-04 15:30:52

标签: matlab mean reshape

让图像有一个24x5矩阵M,包含5种不同变量类型的1小时数据(每个24个值)。

我喜欢将数据平均到例如4小时意味着。

有没有更好的方法,然后进行三次这样的重塑?

M = reshape( nanmean( reshape( reshape(M,1,[]), 4, [] ) ), [], 5)

或者更好的阅读:

M = reshape(M,1,[]);
M = reshape(M,4,[]);
M = nanmean(M);
M = reshape(M,[],5);

感谢您的回答。

1 个答案:

答案 0 :(得分:0)

reshape在MATLAB中不是一项代价高昂的操作,因为它只会改变数据的处理方式,并且不会触及或复制基础数据。

话虽如此,您只需要拨打一次reshape

means = squeeze(nanmean(reshape(M, 4, 6, []), 1))