#data_list:原始的数据列。 windows_size:窗口大小。 step:窗口步进长度
def window_cut(data_list, window_size, step):
data_len = len(data_list)
cut_num = int((data_len - window_size) / step)
res = []
for i in range(cut_num+1):
start_index = i * step
end_index = start_index + window_size
cur_data = data_list[start_index:end_index]
print(cur_data)
res.append(cur_data)
return res
#测试:
data_list = [i for i in range(19)]
print(data_list)
window_size = 5
step = 3
print(window_cut(data_list, window_size, step))
#输出
#[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18]
#[[0, 1, 2, 3, 4], [3, 4, 5, 6, 7], [6, 7, 8, 9, 10], [9, 10, 11, 12, 13], [12, 13, 14, 15, #16]]
python,对一个list进行滑动窗口操作,并选取窗口内的数据
最新推荐文章于 2024-06-19 21:53:18 发布