这段代码是一个时间序列数据的预处理过程,主要包括以下步骤:
加载数据集,并将其存储在名为dataset的DataFrame对象中。
对第四列“风向”进行数字编码转换,使用LabelEncoder()将其转换为数字表示。
将数据类型转换为浮点型(float32)。
使用MinMaxScaler对所有特征值进行归一化,将数据缩放到0到1之间。
调用series_to_supervised函数,将数据格式化为监督学习型数据。该函数通过指定输入序列和输出序列的时间步长来创建适合监督学习模型训练和预测的输入输出数据集。
从reframed DataFrame中删除不需要预测的列。根据给定索引列表[9,10,11,12,13,14,15],使用drop方法删除这些列,axis=1表示按列操作。
打印输出经过处理后的reframed DataFrame对象,可以看到每行数据包含前一天的8个特征值和当天要预测的目标变量。
将reframed中的值提取出来,并存储在名为values的numpy数组中。
将values数组分割成训练集和测试集。其中,前365*24行作为训练集(一年的数据),剩余部分作为测试集。
从训练集和测试集中分别提取输入特征和输出标签,并存储在train_X、train_y、test_X和test_y变量中。
将输入数据转换为3D张量的形式,即(samples, timesteps, features)。其中,samples表示样本数,timesteps表示时间步长(这里是1),features表示特征数。
打印输出训练集和测试集的数据形状,以确认最终生成的数据格式是否符合预期。
内容由零声教学AI助手提供,问题来源于学员提问




