移动平均法matlab代码
时间: 2023-10-05 17:14:45 浏览: 69
当然,我可以为您提供一个简单的移动平均法的MATLAB代码示例。以下是一个使用移动平均法计算一维向量的移动平均值的示例代码:
```matlab
function mov_avg = moving_average(input, window_size)
mov_avg = zeros(size(input));
for i = 1:length(input)
start_idx = max(1, i - window_size + 1);
end_idx = i;
mov_avg(i) = mean(input(start_idx:end_idx));
end
end
```
在这个示例中,`input`是输入的一维向量,`window_size`是移动窗口的大小。该函数会返回一个与输入向量大小相同的移动平均值向量 `mov_avg`。
您可以将上述代码保存为一个.m文件,并在MATLAB中调用该函数来计算移动平均值。例如,您可以使用以下代码调用并显示移动平均值:
```matlab
input = [2, 4, 6, 8, 10, 12, 14, 16, 18, 20];
window_size = 3;
mov_avg = moving_average(input, window_size);
disp(mov_avg);
```
在这个示例中,输入向量`input`是[2, 4, 6, 8, 10, 12, 14, 16, 18, 20],移动窗口大小`window_size`为3。程序将计算出移动平均值并打印在MATLAB命令窗口中。
希望这个简单的示例对您有所帮助!如有任何疑问,请随时提问。