平均元素时超出矩阵尺寸

时间:2018-06-22 22:05:31

标签: matlab indexing

我正在尝试创建一个矢量,该矢量平均包含eddyCO2中的每48个元素。

Tweedle = eddyCO2(1:47:end);
Tweedle(1) = mean(eddyCO2(1):eddyCO2(48));
    for i = 2:length(Tweedle)
    Tweedle(i) = mean(eddyCO2((i-1)*48):eddyCO2(i*48)); (ERROR: Index exceeds matrix dimensions)
    end

我尝试了重塑,似乎唯一可行的方法是手动输入值,但是大小太大而无法循环。为什么会出现此错误?

1 个答案:

答案 0 :(得分:0)

您的脚本的以下修改版本是否符合您的预期?希望对您有所帮助。

Tweedle = eddyCO2(1:48:end);
sz = length(eddyCO2);
for i = 1:length(Tweedle)-1
    Tweedle(i) = mean(eddyCO2((i-1)*48+1):eddyCO2(i*48)); % averages elements 1-48, 49-96, etc.
end
Tweedle(i+1) = mean(eddyCO2(i*48+1):sz); % averages remaining items at end of vector