python for 实现滑窗
时间: 2024-08-13 11:02:49 浏览: 52
基于Numpy.convolve使用Python实现滑动平均滤波的思路详解
5星 · 资源好评率100%
在Python中,`for`循环可以配合切片(slicing)功能轻松地实现窗口滑动(rolling window)。滑窗通常用于分析数据序列,如股票价格、时间序列等,需要在数据上按固定大小的窗口进行计算或统计。
下面是一个简单的例子,展示如何使用`for`循环创建一个滑动窗口函数,这里假设我们有一个列表`data`,我们想要对每两个元素组成一组:
```python
def sliding_window(data, window_size):
windowed_data = []
# 遍历整个数据集,每次移动一个位置作为新的开始
for i in range(len(data) - window_size + 1):
window = data[i:i+window_size] # 切片操作获取当前窗口
windowed_data.append(window)
return windowed_data
# 使用示例
data = [1, 2, 3, 4, 5, 6]
window_size = 3
sliding_windows = sliding_window(data, window_size)
# 输出结果:每个窗口作为一个子列表
print(sliding_windows) # [[1, 2, 3], [2, 3, 4], [3, 4, 5], [4, 5, 6]]
```
阅读全文