前言
以下内容是在学习过程中的一些笔记,难免会有错误和纰漏的地方。如果造成任何困扰,很抱歉。
一、场景描述
描述:这里可以添加本文要记录的大概内容
通过获取当月每天的电表能耗数据,以此来推算未来的每一天的电表数据情况,首先看看实际效果图
这里面包含了三条数据线
- 训练数据 - 蓝色
- 测试核准数据 - 橙色
- 预测值 - 绿色
这里面的预测数据还是有些虚高,主要还是因为维度过低以及数据量过少的缘故,但是从轨迹上看大致还行,在训练数据集越庞大的情况下预测的数据值会更加的准确。
这里面借鉴网友的代码采取了两种方案:
- 自回归移动平均预测模型
- 季节性预测模型
但是数据维度太低了,目前的自变量及因变量只有时间和能耗数据值,所以最终还是选择了自回归移动平均模型。
二、落地实践
描述:这里可以添加本文要记录的大概内容
首先我们将步骤分离为如下几个部分
-
相关库引入
import pandas as pd import matplotlib.pyplot as plt import statsmodels.api as sm
-
数据集引入
# 数据集导入 df = pd.read_csv('能耗数据01.csv', nrows=33)
-
数据集分类,训练集 or 测试集 - 训练集是给机器学习用,测试集是为了看预测值准不准
# 训练集 / 测试集 train = df[0:20] test = df[20:]
-
数据格式处理
# 时间戳格式处理 df['Timestamp'] = pd.to_datetime(df['Datetime'], format='%Y/%m/%d') df.index = df['Timestamp'] df = df.resample('D').mean() train['Timestamp'] = pd.to_datetime(train['Datetime'], format='%Y/%m/%d') train.index = train['Timestamp'] train = train.resample('D').mean() test[