【AICon】探索八个行业创新案例,教你在教育、金融、医疗、法律等领域实践大模型技术! >>> 了解详情
写点什么

在 Amazon QuickSight 中使用表计算进行高级分析

  • 2019-09-29
  • 本文字数:2263 字

    阅读完需:约 7 分钟

在 Amazon QuickSight 中使用表计算进行高级分析

Amazon QuickSight 最近推出了表计算功能,让您能够对数据执行复杂的计算,以获得有意义的见解。在本博文中,我们将一起来看几个对样本销售数据集应用表计算的示例,以便您根据自己的需求开始使用这一新功能。


单击此处可获取示例中所用样本数据集。

表计算是什么?

在 Amazon QuickSight 中使用表计算可以获得时段到时段的趋势指标。您还可以在创建计算时指定特定的时间段,来计算该时段内的指标,或针对某固定时间窗口的计算进行基准比对。您也可以将所有这些任务在自定义的粒度级别去执行。例如,您可以计算行业内销售额的同比增长,或某个特定行业在某个州内的贡献百分比。您还可以计算一年内的累计月销售额、某个行业的销售额在某个州的排名等。


您可以使用一组函数来计算这些指标,包括 runningSum、percentOfTotal 和 percentDifference,以及若干基础分区函数。在此情况下可以使用的基础分区函数包括 sum、avg、count、distinct_count、rank 和 denseRank,以及可用于计算分区的最小值和最大值的 minOver 和 maxOver。

分区函数

在应用这些计算之前,请先查看下面对分区函数的简要介绍。通过分区,您可以指定包含计算的时段的维度。也就是说,分区帮助定义执行计算的窗口。


例如,我们来计算下各个细分市场中每个行业的平均销售额。先在图表中添加行业、细分市场和销售额。向表中添加正则计算字段 avg(sales),得出行业中每个细分市场的平均值,而不是每个行业的平均值。为实现此目的,创建一个使用 avgOver 计算的计算字段。


avgOver(aggregated measure, [partition by attribute, ...])
复制代码


此处的“aggregated measure 聚合度量”是指当度量按图表中的维度分组时对其执行的计算。此计算需在每个行业分区中应用平均值之前先执行。


Average by industry = avgOver(sum(sales), [industry])
复制代码



类似地,您可以分别使用 sumOver、minOver、maxOver 和 countOver 函数来计算销售总额、最低销售额、最大销售额以及每个行业内细分行业的数量。


基准和实际销售额

我们来看一下另一个使用案例,看看在某个州内,在与该州的平均销售额进行基准比较时每个行业的表现。


为此,向表图表中添加州、行业和销售额,并按州排列。要计算基准值,请创建一个计算字段,并按 State 维度对 avgOver 函数分区。


avgOver(aggregated measure, [partition by attribute, ...])
State average = avgOver(sum(Sales), [ship_state])
复制代码


加入我们已将州、行业和销售额添加到表中,则 sum(sales) 会计算州内某个行业的总销售额。要通过基准值确定此值的方差,只需创建另一个计算字段。


Actual vs. benchmark = sum(sales) – State average
复制代码


与前面的计算一样,您可以使用 percentOfTotal 计算得出行业内的销售额与州内的总销售额相比的百分比。

运行总和、差值和百分比差值

我们可以通过以下几个使用案例说明几个其他函数。


使用案例 1:作为销售分析师,我想创建一份报告,按月显示每个行业从每个日历年开始到结束的累计销售额。


为了按行业计算累计月销售额,我需要表格图表中表示的行业、日期和销售额。添加日期字段后,我将聚合更改为月份(如下所示)。



我使用 runningSum 函数为分析添加了一个新的计算字段。runningSum 函数使用如下语法。


runningSum(aggregated measure, [sort attribute ASC/DESC, ...], [partition by attribute, ...]
复制代码


此处的“aggregated measure”是指当按图表中包含的维度进行分组时我们想要的聚合。“sort attribute”是指在执行运行总和之前我们需要排序的属性。如前所述,按属性分区指定维度的每个值中包含运行总和的维度。


在此使用案例中,我们要度量的聚合度量是 sum(sales),按日期排序并按行业和年份划分。插入这些属性,我们得到以下公式。


runningSum(sum(sales),[Date ASC],[industry, truncDate("YYYY",Date)])
复制代码


排序字段和分区列表中的方括号是必需的。然后我们将此计算字段添加到图表中,并对行业进行排序。如果没有年份分区,runningSum 将计算从 2016 年到 2017 年底所有月份的累计总和。



您还可以使用折线图和其他图表类型表示累计月销售额。在折线图中,线的斜率表示该行业在一年内的增长率。例如,科技行业 2016 年的增长似乎较缓慢,但在 2017 年则迅速增长。



您还可以使用组合图表表示总销售额和累计销售额,并按行业筛选。



使用案例 2:接下来我们来计算一个日历年内每个行业的月销售额增长百分比。我们可以使用 percentDifference 函数来实现这一目的。此函数计算某个指标与前一个或后一个指标相比的百分比差值,按指定维度集进行排序和分区。


percentDifference(aggregated measure, [sort attribute ASC/DESC, ...], -1 or 1, [partition by attribute, ...])
复制代码


在此公式中,值 -1 或 1 表示是否应分别计算前一个值或后一个值的差值。插入必填字段,得出以下公式。


percentDifference(sum(sales),[Date ASC],-1,[industry, truncDate("YYYY",Date)])
复制代码


如果您只想得到差值,请使用差值函数。


difference(aggregated measure, [sort attribute ASC/DESC, ...], lookup index -1 or 1, [partition by attribute, ...])
复制代码


可用性

表计算功能在所有支持的 AWS 区域里针对标准版和企业版均已推出。有关更多信息,请参阅 Amazon QuickSight 文档。


作者介绍:


Sahitya Pandiri


Amazon Web Services 的技术项目经理。Sahitya 有 5 年以上产品/项目管理经验,并在零售、医疗保健和分析领域构建了多款产品。她喜欢解决问题,并利用技术来简化流程。


本文转载自 AWS 技术博客


文章链接:


https://amazonaws-china.com/cn/blogs/china/advanced-analytics-with-table-calculations-in-amazon-quicksight/


2019-09-29 16:27900
用户头像

发布了 1835 篇内容, 共 92.2 次阅读, 收获喜欢 73 次。

关注

评论

发布
暂无评论
发现更多内容

vue基本语法使用

小恺

6月月更

详述Java中sort排序函数

工程师日月

算法 Java EE 6月月更

Django API 开发:一个 Todo 应用的后端

宇宙之一粟

6月月更

C#入门系列(五) -- 运算符

陈言必行

C# 6月月更

Squarespace 和 WordPress 的区别

海拥(haiyong.site)

WordPress 6月月更

Linux驱动开发_数码相册项目、360WIFI驱动移植介绍

DS小龙哥

6月月更

【盲盒APP】开发功能版块及功能介绍

WDL22119

【愚公系列】2022年06月 二十三种设计模式(二十二)-模板方法模式(Template Method Pattern)

愚公搬代码

6月月更

Flutter 使用 Redux 的中间件实现异步状态管理

岛上码农

flutter 安卓开发 ios 开发 跨平台应用 6月月更

《非暴力沟通》:如何温柔地沟通?

郭明

读书笔记

Web Service进阶(一)运行原理

No Silver Bullet

6月月更 Web Service 运行原理

浅谈网络攻防中守方的准备工作

kk冲击波

6月月更 攻防演练

修改gradle脚本,加速spring4.1源码编译构建速度

程序员欣宸

Java spring Gradle 6月月更

【LeetCode】数组中第 K 个独一无二的字符串Java题解

Albert

LeetCode 6月月更

数据库每日一题---第3天:大的国家

知心宝贝

数据库 算法 前端 后端 6月月更

Fork Join框架

急需上岸的小谢

6月月更

后端技术复习

卢卡多多

技术栈 6月月更

Kubernetes社区发行版:开源容器云OpenShift Origin(OKD)认知

山河已无恙

k8s openshift

《WebRTC源码深入剖析》总结

音视频专家-李超

源码分析 音视频 WebRTC 源码剖析

Flink on yarn 远程调试源码

JasonLee实时计算

flink

【技能树共建】Python 三元表达式

梦想橡皮擦

6月月更

Linux下可执行程序的Shell传参格式规范

乌龟哥哥

6月月更

EasyRecovery15官方最新版下载功能介绍

茶色酒

EasyRecovery Easyrecovery破解 EasyRecovery15

Fabric.js 居中元素 🎗️

德育处主任

fabric canvas FabricJS Fabric.js 6月月更

使用 TensorFlow 和 Express.js 实现AI图像识别

devpoint

tensorflow Express 6月月更

以购物清单为例讲述 Redux 的状态如何在 Flutter 多个组件间共享

岛上码农

flutter 安卓开发 ios 开发 跨平台应用 6月月更

关于 SAP Commerce Cloud 的 Sample Setup Github 仓库

Jerry Wang

typescript angular SAP commerce 6月月更

JavaScript迭代器

大熊G

JavaScript 前端 6月月更

Web Service进阶(三)HTTP-GET, HTTP-POST and SOAP的比较

No Silver Bullet

soap 6月月更 Web Service HTTP-GET HTTP-POST

Flink 通过 State Processor API 实现状态的读取和写入

JasonLee实时计算

flink

spring event 介绍

Nick

Java spring springboot 6月月更 spring event

在 Amazon QuickSight 中使用表计算进行高级分析_语言 & 开发_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章