1.3 Python预测初步

本文通过一个葡萄酒销量预测的例子,介绍了使用Python进行预测的基本步骤,包括数据预处理、建立线性回归模型、异常值处理、模型优化以及预测和误差分析。在数据预处理中,利用自相关性分析选择了预测基础数据;在模型建立阶段,通过逐步剔除不显著变量并引入非线性项,提高了模型的拟合度。最终模型在测试集上的预测误差平均为11.1%。
摘要由CSDN通过智能技术生成

1.3 Python预测初步

前言:本篇文章通过一个简单的例子来说明用python进行预测的主要步骤。让大家了解到用python进行预测的一个基本过程。

  • 本实例采用wineind数据集(葡萄酒销量预测),数据集表示从1980年1月到1994年8月,葡萄酒生产商销售的容量不到1L的澳大利亚葡萄酒的总量。数据大致如下图所示:
    在这里插入图片描述

(1)首先我们要做的第一步就是数据预处理

  • 基于wineind数据集,使用statsmodels.graphics.tsaplots模块下面的plot_acf函数查看wineind数据的自相关性。代码如下。
from statsmodels.graphics.tsaplots import plot_acf,plot_pacf
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
wineind=pd.read_csv("wineind.csv")
#concat函数可以将数据根据不同的轴作为简单的融合
#axis表示需要合并连链接的轴,0是行,1是列
wineind=pd.concat([wineind,wineind.月份.str.split('-',expand=True)],axis=1)
wineind=wineind.drop(columns=['月份']).rename(columns={
   0:"年份",1:"月份"})
wineind['月份']=[int(x) for x in wineind.月份]
plot_acf(wineind.销量,lags=100,title="wineind autocorrection").show()
  • 在这里插入图片描述
  • 其中,上图中竖线表示对应近n期延迟数据的相关系数,阴影部分表示相关性不明显的部分。其中第一条竖线表示第0期。
  • 从左到右,选择一些不在阴影范围内的数据来建立指标,作为预测基础数据。(1,4,6,8,12)期数据。

(2)观察并且确定wineind数据周期为一年的,并且将1980年到1993年每年按月份的曲线图画在一张图中。代码如下。

"""
我们可以将1980年到1994年每年按照月份的曲线画在一张图中
"""
plt.figure(figsize=(10,5))
for _year_ in pd.unique(wineind.月份):
    df_row=wineind.loc[wineind.年份==_year_,]
    plt.plot(df_row.月份.values,df_row.销量.values,'o--',label
  • 13
    点赞
  • 102
    收藏
    觉得还不错? 一键收藏
  • 16
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值