1 作用
用LSTM模型对时序序列预测时,需要将数据分为多个样本,每个样本中将一定步长的数据作输入,一定步长的数据作输出。split_sequence()就可以将数据分为这样的样本。
2 代码
from numpy import array
def split_sequence(sequence, n_steps):
X, Y = list(), list()
for i in range(len(sequence)):
end_ix = i + n_steps
if end_ix > len(sequence)-1:
break
seq_x, seq_y = sequence[i:end_ix], sequence[end_ix]
X.append(seq_x)
Y.append(seq_y)
return array(X), array(Y)
用def函数定义新函数,函数名为split_sequence,输入参数有sequence和n_step,sequence是要处理的数据名, n_step是指输入n_step个步长的数据来进行预测。
def split_sequence(sequence, n_steps):
X, Y = list(), list() #利用list()函数生成空list
for i in range(len(sequence)): #i遍历sequence的下标索引值
end_ix = i + n