def prepare_olapsequences(ms, vs, lsize, olap, bsize):
from numpy.lib import stride_tricks
global trimframe
trimframe = ms.shape[0] % (lsize - olap)
print(trimframe)
if trimframe != 0:
ms = np.pad(ms, ((0,trimframe), (0,0)), 'constant', constant_values=(0,0))
vs = np.pad(vs, ((0,trimframe), (0,0)), 'constant', constant_values=(0,0))
ms = stride_tricks.as_strided(ms, shape=(ms.shape[0] / (lsize - olap), lsize, ms.shape[1]),
strides=(ms.strides[0] * (lsize - olap), ms.strides[0], ms.strides[1]))
ms = ms[:-1, :, :]
vs = stride_tricks.as_strided(vs, shape=(vs.shape[0] / (lsize - olap), lsize, vs.shape[1]),
strides=(vs.strides[0] * (lsize - olap), vs.strides[0], vs.strides[1]))
vs = vs[:-1, :, :]
btrimframe = (ms.shape[0] % bsize)
if btrimframe != 0:
ms = ms[:-btrimframe, :, :]
vs = vs[:-btrimframe, :, :]
#print(ms.max(), ms.min(), vs.max(), vs.min())
#print(ms.shape, vs.shape)
return ms, vs
评论列表
文章目录