使用SAP Analytics Cloud显示全球新冠肺炎确诊人数和发展趋势的预测

简介:

注:本文只是借用新冠肺炎全球确诊人数作为历史数据,来介绍SAP Analytics Cloud基于机器学习的Time Series Forecasting功能,并没有对现实世界中新冠肺炎的发展趋势做出任何实际预测。

Jerry之前的文章 SAP Analytics Cloud和SAP Cloud for Customer的集成 介绍过,我们最近在做一个项目,通过微信小程序在SAP Cloud for Customer里创建数据,并使用SAP Analytics Cloud对这些数据进行分析和预测。

作为一款用于商业智能和协作式企业计划的解决方案,SAP Analytics Cloud结合了预测分析和机器学习技术的强大功能,能够帮助企业相关人员制定明智的决策,实现更卓越的业务成果。

作为SAP Analytics Cloud的突出亮点之一,我们希望能够在项目里尝试其强大的基于机器学习的数据预测功能。SAP Analytics Cloud里基于机器学习的功能点有不少,本文先介绍从使用步骤上来说最简单的Time Series Forecasting(基于时间序列的智能预测)功能。

该功能通俗地说,就是利用过去一段时间产生的历史数据,利用机器学习算法,预测出最近的将来可能会发生的数据。至于背后算法的原理,使用SAP Analytics Cloud的用户一般都不会去关心。

为了体验SAP Analytics Cloud的Time Series Forecasting功能,我选择了全球新型冠状肺炎病毒逐日确诊的人数作为历史数据,并使用SAP Analytics Cloud对其增长趋势进行预测。从下载新冠肺炎确诊人数的历史数据,到最后看到预测的数据,总共耗时不超过20分钟,这说明SAP Analytics Cloud的时间序列预测功能是相当容易操作的。

操作思路如下:

(1) 从相关网站下载新冠肺炎确诊人数的历史数据。
(2) 将历史数据导入SAP Analytics Cloud,创建Model.
(3) 基于Model创建Story,在Story里创建一个Line Chart控件,使用该控件提供的Time Series Forecasting即可。

从下面这个网站下载新冠肺炎确诊人数的历史数据:

https://ourworldindata.org/covid-sources-comparison

下载到本地是一个csv文件,其中有三个数据源,分别来自Johns Hopkins(美国一所常青藤大学), 世界卫生组织WHO和ECDC(欧洲疾病预防和控制中心). 我们选择其中一列即可,本文我选择Johns Hopkins提供的数据。

从csv文件导入到SAP Analytics Cloud生成Model的步骤我就不逐一截图了:

其间有个小问题,SAP Analytics Cloud里支持的Date类型的Dimension的格式如下:

而csv文件导入到SAP Analytics Cloud后,日期列的格式为MMM DD, YYYY的格式,不属于SAP Analytics Cloud支持的日期格式中的任何一种,因此无法直接将这一列设置成类型为Date的Dimension.

所以我们首先要将这一列的数据转换成SAP Analytics Cloud支持的日期格式,比如转换成DD-MM-YYYY, 即日,月和年之间用“-”分割。

首先将原始的MMM DD,YYYY根据逗号拆分成新的三列:MMM,DD和YYYY:

即下图的Date_3, Date_2和Date_2_2, 这三列相当于编程代码里的中间变量:

然后再创建新的一列,编辑公式如下,将刚才生成的日,月和年三列的内容用“-”连接起来。

CONCAT(CONCAT(CONCAT([DD],'-'),CONCAT([MMM],'-')),[YYYY])

最后生成的经过公式计算后的列位于下图最右边,此时YYYY,MMM和DD这三列的使命已经完成,可以删除了。

这个模型创建好之后,基于该模型创建一个Story,在空白的页面里插入一个Line Chart(线状图):

新冠肺炎的确诊人数选择为Measure,日期选择为Dimension:

SAP Analytics Cloud会默认将Date这个日期类型的Dimension对应的数据进行汇总(Aggregation),因此我将层级结构设置为4,这样得到的统计图表如下图所示:

再选择Drill Down on Date,就能看到每一天的明细数据了:

比如在3月18日这天,全球新冠肺炎的确诊人数快接近43万了。

此时如果要查看SAP Analytics Cloud根据历史数据预测出最近的将来可能会到达的数据,只需要在Line Chart里选择Forecast->Automatic Forecast:

预测完成,SAP Analytics Cloud将这次预测的质量评分为最高分5分,预测出了未来三天即3月19日,3月20日,3月21日的全球确诊人数。

同样的,我们可以设置过滤器,仅仅查看SAP Analytics Cloud根据过去的历史数据,预测出某一个国家未来三天可能达到的确诊数字:

例如,根据SAP Analytics Cloud的预测,美国的确诊人数将在3月19日这一天达到一万。

在Forecast的高级选项里,还能切换使用其他的算法,比如Linear Regression(线性回归)和Triple Exponential Smoothing(指数平滑法)进行预测。

关于SAP Analytics Cloud Time Series Forecasting背后使用的机器学习算法和不同的预测算法之间的区别,SAP官网上有概要介绍:

https://www.sapanalytics.cloud/resources-your-guide-to-time-series-forecasting/

随着Jerry项目的进行,我会继续分享在项目中学到的SAP Analytics Cloud相关知识。最后希望新冠肺炎在全球的肆虐能早日结束,大家都能回复到正常的生活工作状态中来。感谢阅读。

本文来自云栖社区合作伙伴“汪子熙”,了解相关信息可以关注微信公众号"汪子熙"。

相关文章
|
6月前
|
安全 测试技术 数据安全/隐私保护
SAP Commerce Cloud Backoffice site 里 Require Authentication 字段的作用
SAP Commerce Cloud Backoffice site 里 Require Authentication 字段的作用
34 0
|
12天前
|
安全 UED 开发者
SAP Commerce Cloud 配置项 refreshWithLock=false 的作用介绍
SAP Commerce Cloud 配置项 refreshWithLock=false 的作用介绍
17 0
|
12天前
|
Java BI API
SAP Cloud for Customer 里如何通过 ABSL 二次开发方式消费 SAP S/4HANA 系统的 API
SAP Cloud for Customer 里如何通过 ABSL 二次开发方式消费 SAP S/4HANA 系统的 API
12 0
|
2月前
|
机器学习/深度学习 人工智能 监控
SAP Sales Cloud,Service Cloud 和 SAP BTP 平台上的 AI 集成场景
SAP Sales Cloud,Service Cloud 和 SAP BTP 平台上的 AI 集成场景
65 0
|
5月前
|
数据安全/隐私保护
SAP Commerce Cloud 的 DataIsolation flag
SAP Commerce Cloud 的 DataIsolation flag
25 0
|
5月前
|
数据管理 API
什么是 SAP Commerce Cloud 集成扩展包
什么是 SAP Commerce Cloud 集成扩展包
21 1
|
6月前
|
SQL 存储 Java
关于 SAP Commerce Cloud 开发环境的 HSQLDB
关于 SAP Commerce Cloud 开发环境的 HSQLDB
18 0
|
1月前
|
前端开发 搜索推荐 开发者
SAP UI5 sap.m.Column 控件的 minScreenWidth 属性介绍
SAP UI5 sap.m.Column 控件的 minScreenWidth 属性介绍
27 0
|
1月前
|
JavaScript 前端开发 开发者
SAP UI5 控件 sap.m.ListBase 的 inset 属性的作用介绍
SAP UI5 控件 sap.m.ListBase 的 inset 属性的作用介绍
13 0
|
1月前
|
Web App开发 数据采集 前端开发
纯技术讨论:如何让 SAP UI5 应用无法被别人在浏览器里调试 - 这种做法不推荐试读版
纯技术讨论:如何让 SAP UI5 应用无法被别人在浏览器里调试 - 这种做法不推荐试读版
15 0