数据可视化之powerBI技巧(六)在PowerBI中简单的操作,实现复杂的预测分析
时间序列预测就是利用过去一段时间内的数据来预测未来一段时间内该数据的走势,比如根据过去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中简单的操作,实现复杂的预测分析的更多相关文章
- 数据可视化之powerBI技巧(十)利用度量值,轻松进行动态指标分析
在一个图表中,可以将多项指标数据放进去同时显示,如果不想同时显示在一起,可以根据需要动态显示数据吗?在 PowerBI 中当然是可以的. 下面就看看如何利用度量值进行动态分析. 假如要分析的指标有销售 ...
- 数据可视化之PowerQuery篇(十一)使用Power BI进行动态帕累托分析
https://zhuanlan.zhihu.com/p/57763423 上篇文章介绍了帕累托图的用处以及如何制作一个简单的帕累托图,在 PowerBI 中可以很方便的生成,但若仅止于此,并不足以体 ...
- 我的Android六章:Android中SQLite数据库操作
今天学习的内容是Android中的SQLite数据库操作,在讲解这个内容之前小编在前面有一篇博客也是讲解了SQLite数据库的操作,而那篇博客的讲解是讲述了 如何在Window中通过DOM来操作数据库 ...
- 数据可视化之powerBI技巧(二十一)简单三个步骤,轻松管理你的Power BI度量值
最近碰到几个星友的问题,都是问我之前分享的源文件是如何把度量值分门别类放到不同的文件夹中的,就像这样, 其实在之前的文章中也曾提及过做法,这里再详细说一下制作步骤: 01 | 新建一个空表 点击菜单栏 ...
- 数据可视化基础专题(六):Pandas基础(五) 索引和数据选择器(查找)
1.序言 如何切片,切块,以及通常获取和设置pandas对象的子集 2.索引的不同选择 对象选择已经有许多用户请求的添加,以支持更明确的基于位置的索引.Pandas现在支持三种类型的多轴索引. .lo ...
- 数据可视化实例(十六):有序条形图(matplotlib,pandas)
排序 (Ranking) 棒棒糖图 (Lollipop Chart) 棒棒糖图表以一种视觉上令人愉悦的方式提供与有序条形图类似的目的. https://datawhalechina.github.io ...
- Android源码阅读技巧--查找开发者选项中显示触摸操作源码
在开发者模式下,在开发者选项中,可以勾选“显示触摸操作”,然后只要点击屏幕就会在点击的位置有圈圈显示.如何找到绘制圈圈的代码部分,有什么技巧来阅读代码量这么大的android系统源码呢?以下请跟着小老 ...
- Git知识总览(六) Git分支中的远程操作实践
前几篇博客陆陆续续的讲了好多关于Git操作的内容,本篇博客仍然也不例外,不过本篇博客的主题是关于git的远程操作的.依照之前博客的风格,我们依然依托于LearningGitBranch中的相关内容来探 ...
- 使用bokeh-scala进行数据可视化(2)
目录 前言 几种高级可视化图表 总结 一.前言 之前已经简单介绍过一次如何使用Bokeh-scala进行数据可视化(见使用bokeh-scala进行数据可视化),以及如何在Geotrel ...
随机推荐
- Rust 数据类型
Rust中的每个值都具有特定的数据类型. 基础类型: 整数,浮点数,布尔值和字符 i8,i16,i32,i64,i64,i128,isize, u8,u16,u32,u64,u64,u128,usiz ...
- C常见错误小记(未完)
1.指针与NULL 下面这段代码会报错: { int *a = NULL; *a = ; printf("%d",*a); } 指针初始化为NULL,还是没有分配内存,所以会报错. ...
- Flink Table Api & SQL 初体验,Blink的使用
概述 Flink具有Table API和SQL-用于统一流和批处理. Table API是用于Scala和Java的语言集成查询API,它允许以非常直观的方式组合来自关系运算符(例如选择,过滤和联接) ...
- Day8-微信小程序实战-交友小程序-首页用户列表渲染及多账号调试及其点赞功能的实现
在这之前已经把编辑个人的所有信息的功能已经完成了 之后先对首页的列表搞动态的,之前都是写死的静态 1.之前都是把好友写死的,现在就在js里面定义一个数组,用循环来动态的绑定 在onReady中定义,取 ...
- 第二章、Web中使用shiro(实现登陆)
虽然Apache Shiro的核心设计目标允许它用于保护任何基于JVM的应用程序(如命令行应用程序,服务器守护程序,Web应用程序等),但本指南将着重讨论最常见的用例:确保运行的Web应用程序一个Se ...
- Head First 设计模式
OO基础 抽象 封装 多态 继承 OO原则 封装变化 多用组合,少用继承 针对接口编程,不针对实现编程 为交互对象之间的松耦合设计而努力 对扩展开放,对修改关闭 依赖抽象,不要依赖具体类 最少知识原则 ...
- 吉比特&雷霆游戏--2020春招实习
笔试 题量较大,仅记了一些印象比较深刻的题. 题型为选择 + 填空(给C++代码填输出结果) + 编程 编程题不会太难,最难的就一道字符串的全排列(类似剑指offer第38题LeetCode链接)可以 ...
- 如何获取自定义meta标签信息?
<meta name="apple-itunes-app" content="app-id=432274380" /> 类似于这种meta信息,js ...
- nginx 注释配置及详解
前言 DMZ(Demilitarized Zone) 非军事区,生产环境 WEB 服务部署的区域,公司的架构为一台nginx 充当 load balance 服务,负载到两台 nginx 上面,反向代 ...
- Spring系列.Bean简介
Bean属性配置 Spring在读取配置文件中bean的metadata后会构造一个个BeanDefination对象.后面Spring会根据这些BeanDefinition创建对象.在配置一个bea ...