python滑动平均
时间: 2023-08-15 16:14:09 浏览: 134
滑动平均是一种常用的数据平滑技术,可以用于平滑时间序列数据。在Python中,可以使用NumPy库来实现滑动平均。
下面是一个简单的示例代码,演示如何使用NumPy实现滑动平均:
```python
import numpy as np
def moving_average(data, window_size):
weights = np.repeat(1.0, window_size) / window_size
return np.convolve(data, weights, 'valid')
# 示例数据
data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
# 滑动窗口大小
window_size = 3
# 计算滑动平均
smoothed_data = moving_average(data, window_size)
print("原始数据:", data)
print("滑动平均结果:", smoothed_data)
```
在上面的代码中,我们定义了一个`moving_average`函数,该函数接受两个参数:`data`是输入的时间序列数据,`window_size`是滑动窗口的大小。函数内部使用`np.convolve`函数来进行卷积计算,实现滑动平均。
运行上述代码,将会输出以下结果:
```
原始数据: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
滑动平均结果: [2. 3. 4. 5. 6. 7. 8.]
```
可以看到,滑动平均将每个窗口内的数据取平均值,得到了平滑后的结果。