时间序列预测就是利用过去一段时间内的数据来预测未来一段时间内该数据的走势,比如根据过去5年的销售数据进行来年的收入增长预测,根据上个季度的股票走势推测未来一周的股价变化等等。

对于大部分人来说,这是个相对比较复杂的预测建模问题,但在工具如此丰富的今天,当然可以不用自己动手建模,很多工具都可以实现这一功能。本文介绍在PowerBI中如何进行时间序列预测。

折线图中的预测

时间序列数据一般使用折线图来展现,因此在PowerBI的折现图中也就有了预测功能。

先在PowerBI中创建一个折线图,

然后在分析面板中,可以看到最后要有一个【预测】功能,

展开【预测】,点击添加,有以下几个参数设置,

预测长度就是进行未来多长时间的预测,下面以50天为例,

忽略最后N个数据点,可以避免最后一些异常值的影响;还有一个功能是可以检验预测的效果,比如忽略最后50天,预测长度也是50天,这样就可以检验最后50天的实际值和预测值的差异,通过下图可以看到,实际走势的确在预测区间内,

置信区间是统计学上的一个基础术语,利用它可以计算出预测区间的上限和下限值。通过置信区间的设置,可以控制预测的质量,因为既然是预测,结果往往会有误差,几乎不可避免。

上图用的是95%的置信区间,通俗的来说,就是实际数据有95%的可能性会落在这个区间内。

如果选择的是75%的置信区间,如下图,

可以看出预测区间收窄,只有75%的可能性会落在这个区间内。

置信区间设置的越高,预测区间越大,但预测的精度较低;通过降低置信区间,可以提升预测的精度,但其可信度也随之下降。实际预测时要平衡这二者的关系。

最后还有一个参数是季节性,如果历史数据有规律性的变化,可以在这里进行设置。假如每年的销售数据有季节性的规律,如果数据点间隔是季度,就可以设置为4,如果数据点间隔为天,设置为365。这里如果不填,系统会自动检测规律性。

上面的几个预测,就是没有填写这个参数,系统没有检测出历史数据有什么规律,所以预测线都是一条直线,预测区间上下限间隔相等。

还是上图的数据,季节性填上150,置信区间为95%,看看预测区间有什么变化,

可以看到预测线也有了一定的曲折变化,这是因为根据之前150天的历史数据的涨跌变化,预测未来也有这个涨跌趋势。

当然这里不能随便填写,除非你有足够的证据表明历史数据有这个规律,否则预测结果更加难以控制。

预测数据不仅只是在折现图上展现,还可以查看预测数据并导出,

(具体如何导出数据,可以查看:PowerBI中的数据如何导出到Excel?)

从以上介绍可以看出,PowerBI中创建预测具有极高的易用性,可以不用深入了解模型和算法原理,初学者也只需点击几下就可轻松实现预测分析。

当然如果想要更深入的进行预测分析,运用预测模型并精准控制模型的参数,还有几个自定义图表可以实现。

在自定义图表市场中搜索"forecast",

可以找到很多预测图表,不过都是R脚本创建的,使用之前需要电脑中先安装R程序,并加载图表需要的程序包。(关于这一块可以参考:R数据可视化)

依然运用上面的数据,挑选几个常用的自定义图表看看预测的结果

Time Series Forecasting Chart

这是利用指数平滑模型来进行预测的,可以在设置选项中设置各项参数,可以看到它有深浅两个预测区间,这是因为它可以设置两个置信区间,同时进行观察。

Forecasting With ARIMA

ARIMA就是自回归移动平均模型的简称,是一个非常著名的时间序列预测方法,PowerBI中将这一模型图表化,只需要输入相关的参数,就可以轻松运用这一模型进行预测,不过使用之前需要先了解该模型以及它的各项参数的含义。

Forecast Using Neural Network By MAQ

对这个算法原理不太清楚,不过从名字上来看,应该更加高端,是运用神经网络技术来进行预测,其结果可能会更加精准一些。

简单列出这几个自定义模型,其他的预测图表可以自己加载了解一下。通过这些模型,PowerBI将复杂的建模和算法在后台进行配置,而在界面上只需要简单的交互式参数输入,为最终用户包括数据科学家提供预测分析服务。

想要深入进行数据预测,还是要了解一下这些预测模型的原理和算法的,以便对预测的过程进行控制,对预测的结果进行解释。如果只是一般的预测,PowerBI默认的折线图中的预测也足够用了。

数据可视化之powerBI技巧(六)在PowerBI中简单的操作,实现复杂的预测分析的更多相关文章

  1. 数据可视化之powerBI技巧(十)利用度量值,轻松进行动态指标分析

    在一个图表中,可以将多项指标数据放进去同时显示,如果不想同时显示在一起,可以根据需要动态显示数据吗?在 PowerBI 中当然是可以的. 下面就看看如何利用度量值进行动态分析. 假如要分析的指标有销售 ...

  2. 数据可视化之PowerQuery篇(十一)使用Power BI进行动态帕累托分析

    https://zhuanlan.zhihu.com/p/57763423 上篇文章介绍了帕累托图的用处以及如何制作一个简单的帕累托图,在 PowerBI 中可以很方便的生成,但若仅止于此,并不足以体 ...

  3. 我的Android六章:Android中SQLite数据库操作

    今天学习的内容是Android中的SQLite数据库操作,在讲解这个内容之前小编在前面有一篇博客也是讲解了SQLite数据库的操作,而那篇博客的讲解是讲述了 如何在Window中通过DOM来操作数据库 ...

  4. 数据可视化之powerBI技巧(二十一)简单三个步骤,轻松管理你的Power BI度量值

    最近碰到几个星友的问题,都是问我之前分享的源文件是如何把度量值分门别类放到不同的文件夹中的,就像这样, 其实在之前的文章中也曾提及过做法,这里再详细说一下制作步骤: 01 | 新建一个空表 点击菜单栏 ...

  5. 数据可视化基础专题(六):Pandas基础(五) 索引和数据选择器(查找)

    1.序言 如何切片,切块,以及通常获取和设置pandas对象的子集 2.索引的不同选择 对象选择已经有许多用户请求的添加,以支持更明确的基于位置的索引.Pandas现在支持三种类型的多轴索引. .lo ...

  6. 数据可视化实例(十六):有序条形图(matplotlib,pandas)

    排序 (Ranking) 棒棒糖图 (Lollipop Chart) 棒棒糖图表以一种视觉上令人愉悦的方式提供与有序条形图类似的目的. https://datawhalechina.github.io ...

  7. Android源码阅读技巧--查找开发者选项中显示触摸操作源码

    在开发者模式下,在开发者选项中,可以勾选“显示触摸操作”,然后只要点击屏幕就会在点击的位置有圈圈显示.如何找到绘制圈圈的代码部分,有什么技巧来阅读代码量这么大的android系统源码呢?以下请跟着小老 ...

  8. Git知识总览(六) Git分支中的远程操作实践

    前几篇博客陆陆续续的讲了好多关于Git操作的内容,本篇博客仍然也不例外,不过本篇博客的主题是关于git的远程操作的.依照之前博客的风格,我们依然依托于LearningGitBranch中的相关内容来探 ...

  9. 使用bokeh-scala进行数据可视化(2)

    目录 前言 几种高级可视化图表 总结 一.前言        之前已经简单介绍过一次如何使用Bokeh-scala进行数据可视化(见使用bokeh-scala进行数据可视化),以及如何在Geotrel ...

随机推荐

  1. RabbitMQ是什么

    1.引入MQ 1.1什么是MQ ​ MQ(Message Quene):翻译为 消息队列,通过典型的 生产者 和 消费者 模型,生产者不断向消息队列中生产消息,消费者不断的从队列中获取消息.因为消息的 ...

  2. VMWare虚拟机开启时显示模块“Disk”启动失败的解决方案

    找到虚拟机所在的目录, 将 .vmx文件打开 将文件vmci0.present = "TRUE"改为 vmci0.present = "FALSE" 删除以.l ...

  3. TensorFlow从0到1之矩阵基本操作及其实现(7)

    矩阵运算,例如执行乘法.加法和减法,是任何神经网络中信号传播的重要操作.通常在计算中需要随机矩阵.零矩阵.一矩阵或者单位矩阵. 本节将告诉你如何获得不同类型的矩阵,以及如何对它们进行不同的矩阵处理操作 ...

  4. 关联函数-web_save_param_length

    int web_save_param_length(const char * Param,const char * Base,LAST); 参数说明: Param:保存长度的参数的名称. Base:参 ...

  5. mysql字符串类型(TEXT 类型)

    TEXT 类型 TEXT 列保存非二进制字符串,如文章内容.评论等.当保存或查询 TEXT 列的值时,不删除尾部空格. TEXT 类型分为 4 种:TINYTEXT.TEXT.MEDIUMTEXT 和 ...

  6. Spark文档阅读之二:Programming Guides - Quick Start

    Quick Start: https://spark.apache.org/docs/latest/quick-start.html 在Spark 2.0之前,Spark的编程接口为RDD (Resi ...

  7. 初识Redis的数据类型HyperLogLog

    前提 未来一段时间开发的项目或者需求会大量使用到Redis,趁着这段时间业务并不太繁忙,抽点时间预习和复习Redis的相关内容.刚好看到博客下面的UV和PV统计,想到了最近看书里面提到的HyperLo ...

  8. selenium(1)-详细解读元素定位的八种方式

    安装selenium和下载webdriver 安装selenium pip install selenium pip install selenium  -U  (判断是否有最新版本) 下载drive ...

  9. docker 镜像删除

    (我们以删除 php-fpm 这个镜像为例子) 一.查看镜像的 ID [root@localhost ~]# docker images REPOSITORY TAG IMAGE ID CREATED ...

  10. Python 简明教程 --- 13,Python 集合

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 如果代码和注释不一致,那很可能两者都错了. -- Norm Schryer 目录 前几节我们已经介绍 ...