才发现,一不小心写了这么多篇表计算主题的文章了:

但是呢,表计算博大精深,还会持续研究下去的。

开始研究表计算(Table Calc)的内容了,总觉得官方的help稍微有些不符合学习理解的规律

表计算

谈到Table Calc一般有两个入口

1 快速部署连续的度量字段,添加表计算/快速表计算(不知道连续、和度量的概念,出门左转去看这个,维度和度量)

2 计算字段,直接编写表计算函数

其中方法一的表计算的编辑功能功能,底层也是基于表计算函数实现的

也就是说,无论如何也绕不开表计算函数的,说明表计算计算字段的应用是重点

来看,表计算函数有这些:

如下是软件中表计算分类的截图,让你们有个直观感受先

感觉一定是一头雾水的,只看名字,大多数是干啥用的完全不知道

今天来解决这个问题!

构建测试数据

使用自带的超市数据,构建如下数据组合的图表订单的年份和季度

销售所在地区

销售额

你要知道的先思考,对于一张表,你一般会想要知道什么信息不同时期的销售情况的趋势

最佳销售的时间

最差销售的时间

各时期销售排名

销售分类汇总

年增长率

季度增长率

基于这个想法,默认的表格是无法回答我们的问题的,需要对表格中的各个单元格做这个对比,最终才能得到我们的答案

那么问题来了,对于表格,我们采取什么样的书读取和数据查找方式?

比如,4年数据中,哪一年的哪个季度是销售额最大值?当然肉眼还是可以分辨出,2016年4季度是冠军

如果第二个问题呢,哪个月的净增长最大即,本月销售 - 上月销售

这个肉眼就不能做到了,需要对现有数据做二次计算才能得出结论

好了,对同一字段下的数据做数据间的运算,就是表计算的使命

表计算函数

前面说到,表计算的底层都是依托于表计算的计算函数实现的,下面就来介绍这些函数

会聊到如下函数定位类函数:FIRST、LAST、LOOKUP

汇总类函数:TOTAL、SIZE

排序类函数:INDEX、RANK

RUNNING函数:running sum、running avg

WINDOW函数:window sum、window avg

表格“坐标系”

想要讲清楚表计算,有必要使用一个描述方法,我们用模拟坐标轴的方式,来从字面理解一下这几个函数

之前的数据,我们来画几条线

基本坐标系

首行,设为0点第一行,即为1

第二行,即为2

最后一行,依据此图,即为16向下是增长

分区坐标系,所谓分区,就相当于有多个子坐标系,每个子坐标系单独计算什么时候会用到分区,而不用全局计算呢?举个例子分类小计后边例子还很多......

使用坐标轴来加强理解还会有:我们通过FIRST()、LAST()函数来确认0轴

通过index 、rank函数生成坐标轴

通过计算目标单元格举例0值的距离,也就是举例First的距离

通过lookup查询目标单元格数值

通过window、 running ,进行子轴运算

开始聊函数

确认数据位置的函数

分析数据的第一步,要定位数据,那么基于坐标轴的概念,就是要找到表格的头和尾

头---即 FIRST

如下是FIRST函数的定义从当前行,到分区第一行的行数

那么就是这样

(配图就是这么的酣畅淋漓 奔放洒脱)

每一行,使用首行的行数减去自己的索引行数

也就是在首行的下边为负值

在首行的上边为正值(虽然不存在)

绝对值越大,距离越远

这样就可以确立 数据各自之间的关系了

对应的尾巴就是LAST,last 和 first 相反FIRST首行为0

LAST尾行为0

first last的责任仅仅是定位行、行尾

日常的案例中,需要定位到第二行、或倒数第二行

那么就可以使用,FIRST()-1,LAST()+1

上边两个函数,只是当前行举例行首、行尾的长度,使用负值标记。

负值总感觉不舒服,我们还有INDEX这个函数,是专门用来标记数据的顺序的所有的函数都可以用Ad-Hoc快捷输入的

对比index和firstINDEX是类似于行号的,是递增

注意,你是不是觉得index就等于行号? NO

我们的这个例子,不涉及分区,所以

行号,是记录数的index

可以代表分区数

也可以代表行数

也就是说,当涉及分区的时候,INDEX就不一定等于行号了

为数据计数的函数我们按照实际的需求一点点向前推进的了解各类函数,这种感觉类似于,盲人摸象。

我们目前“摸”到了数据的首行和尾行,即,头和尾,下一步来摸摸了解一下其他部分。

比如,一共有多少行数据?我们想知道总体。则,使用SIZE函数,返回分区中的行数

根据计算依据的不同而针对全局表格或者独立分区

SIZE会在新建的一列中填充所在作用域的总和

为数据排序的函数

继续摸象,知道总体了,下一步想要知道,谁是第一个,谁是第二个,谁是最后一个请大家按照考试成绩站队,成绩好的站在前边,成绩不好的站在后边

是不是这种感觉?

只不过我们这里排列的是销售额。下图排列出,从1到16的各个数据

为数据计算的函数

排序完成,集体点名就算结束了,还想摸啥呢?

我想知道总数是多少?

那要用TOTAL函数,会在新建的列中,返回整个区域中(类似于作用域的概念)的总数是多少

计算依据

介绍几个函数后有了整理了解,但都是基于默认的整张表

所谓计算依据就是,执行表计算的作用域

看这图,SIZE的计算结果是16,是因为它的作用域是全部2013-2016年

如果我们强制SIZE的作用域的单独的年,比如2013,那就会是如下的4了

修改方法如下

点击表计算函数的倒三角符号,依次定位到计算依据:

之前计算结果为16的计算依据为:表(向下)

我们点击编辑表计算,会弹出一个新窗口

新版tableau会高亮显示当前的计算依据,如下是默认的表(向下),使用黄色高亮显示,计算结果是16

我们将计算依据修改成 区(横穿然后向下),高亮范围变为2013对应的分区,计算结果变为4

至于其他部分

利用你的探索精神,自己都点一下试试吧

我们再来玩玩对FIRST的分区操作默认的是 表(向下)修改成 区(向下)即,每年为单位计数,从0,到-3,共四个稍微修改一下数据格式,增加区域字段(东北、华北等)横穿,则为从左往右向下,则为从上到下

先横穿,然后向下,则为蛇形前进先横向走完第一行

再,跳转到第二行继续横向前进

直到全部数据读取完毕

先向下,然后横穿,参考上边的案例,则为第一列,向下读取到底后

再跳转到第二列继续读取

直到所有数据读取完毕

不一一例举了,自己尝试一下就明白了

查找类函数Excel万能大杀器是vlookup,想必都有耳闻

这里的lookup定义为对需要查找的表达式,给予特定的位移偏移同样,可以使用Ad-Hoc快捷输入

函数的参数有两个参数1 表达式,即度量的聚合运算,此处为销售额的求和聚合运算

参数2 相对于目标的偏移量

来看结果:

注意观察最底部的2016第四季度,94807¥

lookup的偏移量=2,意思为:本处输出项目为源sum(销售额)的第2行的数值

也即是

如果偏移值为6,则

如下就看的明显了,增加3列,分别是偏移2、偏移3、偏移4

同样,如果是-2、-3、-4,就是整体向下移动

关于数值偏移,还有一个函数,PREVIOUS_VALUE注意,这个函数只有一个参数项ta的定义是:返回当前分区的上一行的值

所以结果如下:(向下)

如果是横穿,则为:

RUNNING函数

首先,running的玩法有点类似于帕累托图的意思

看一下函数的定义:从分区第一行,到当前行的计算

类似于累加计算

当前行的数值,将包括自己在内的前面所有数值一起做运算就是running_sum

来看栗子:

我们把index做running sum的运算

最末一行即为,从1到16的全部数值的求和结果尝试修改计算依据为分区

则为,1+2+3+4,的结果,为10

running只是个函数类别,对应的有sum、avg、max、min等

如下为max,即从开头到本身之间出现过的值查找最大值

如下为count,即从开头到本身之间出现过的值,计数

有点类似与index

WINDOW类函数最后一个window类函数,直译为移动窗口函数ta有三个参数

我们使用running函数作为功能对比

看一下定义:

先由第二参数和第三参数定义一个数据窗口

然后对数据窗口这个作用域中的数值做运算

第一个参数为,表达式,即聚合的度量值

第二个参数为,数据窗口与第一行FIRST的偏移

第三个参数为,数据窗口与最后一行LAST的偏移

那么,如下的例子中,首行偏移分别为1、2、3

其中,第二和第三参数是可选参数

如果使用缺省值,则为从首行到末尾的计算

即如下2种情况是相同的WINDOW_SUM(表达式)

WINDOW_SUM(表达式,FIRST(),LAST())

如果+1,则起始位置向下挪动一行,再开始求sum即:2+3+4+5+ ......

如果+2,则起始位置向下挪动两行,再开始求sum即:3+4+5+ ......

如果+3,则起始位置向下挪动两行,再开始求sum即:3+4+5+ ......

基础函数就是差不多这么多,具体应用案例会有MoM、YoY等,下次再说

更新记录:

2017-1-16 发布

Peace!

我在想为什么没有人赞赏呢?

tableau度量值计算_Tableau 基础 | 表计算函数相关推荐

  1. Tableau(9):计算字段、表计算、自定义表计算

    文章目录 一.计算字段 二.表计算 三.自定义表计算 参考资料 一.计算字段   步骤1:导入全球超市订单数据   步骤2:创建成本(销售额-利润)字段   步骤3:创建盈利标志(若利润大于0盈利,反 ...

  2. tableau_9_快速表计算、自定义表计算、计算字段

    文章目录 快速表计算 汇总 差异 百分比差异 总额百分比 排序 百分位 移动平均 自定义计算 计算字段 第一种,在原有的度量值的基础上创建 第二种 在左边字段列空白区域创建 快速表计算 汇总 差异 百 ...

  3. tableau度量值计算_Tableau图表界面组成介绍

    声明:内容来源拉勾教育数据分析训练营课程视频 1 Tableau工作表基本界面 基础概念:维度.度量.聚合.粒度. 维度: 维度包含定量值(例如名称.日期或地理数据),可以使用维度进行分类.分段以及揭 ...

  4. tableau度量值计算_Tableau可视化(雷达图):漫威英雄能力值

    工作簿在此:Tableau Public: Marvel_SuperHeros 这次主要挑战了一下Tableau制作雷(zhen)达(ma)图(fan)和放射条形图!!! 不过还是硬着头皮死磕到底.. ...

  5. Tableau中的表计算

      Tableau中的普通计算是把数据发送给数据源端进行计算,而表计算是在已经取得的查询结果基础上由Tableau做的进一步计算,即在结果表格里进行计算.Tableau中常见的表计算类型主要有:差异. ...

  6. tableau 如何选择tableau计算类型?基本计算 / LOD计算 / 表计算

    一.计算在数据源和分析中的位置 基本计算和LOD表达式是数据源查询的计算,返回的是一个结果集.统称为custom calculation,生成的结果是custom filed 自定义字段,字段在哪里? ...

  7. tableau计算之(三)表计算——分区/寻址——手动计算/快速计算

    一.表计算是什么? 表计算是指不通过数据源进行直接计算,而是借助中间表计算得出结果的计算,其基本特征是基于视图中聚合数据的二次聚合计算. 二.分区与寻址的概念 要了解表计算,必须先了解--分区与寻址 ...

  8. jqgrid 编辑列拿不到值_如何在DAX Stadio和Excel中返回表和度量值?

    1.在DAX Studio中返回表 通常我们在DAX Studio中书写的时候,要使用到evaluate申明,也就是在DAX Studio中进行书写公式,我们可以得到函数中间返回的表格,以便于我们查看 ...

  9. 百度数据可视化Sugar BI — 表计算

    Sugar BI 中的图表除了只能绑定度量或只能绑定维度的图表,都支持表计算.表计算可以对数据模型的查询结果进行二次计算,计算时机在 sql 查询之后.比如我们查询了 2013 年度到 2016 年度 ...

最新文章

  1. rowbounds分页oracle,Oracle使用MyBatis中RowBounds实现分页查询功能
  2. C#, ASP.NET面试题系列(1)
  3. 深入理解Cache工作原理
  4. suse linux 查看内存,Suse linux查询内存大小的指令是什么?
  5. ArcMap 导入Excel坐标数据
  6. servlet如何使用session把用户的手机号修改_SpringBoot源码学习系列之嵌入式Servlet容器...
  7. Vue路由History模式分析
  8. ffmpeg 安装bzlib_编译安装ffmpeg 要支持xvid、x264、mp3、ogg、amr、faac
  9. mod_signalwire.c:371 Curl Result 1, Error: Protocol https not supported
  10. mathematica完爆matlab,Mathematica和Matlab相比的计算效率问题
  11. 1.Oracle 安装教程及使用
  12. Excel如何从身份证号码中提取性别
  13. 《Python编程:从入门到实践》---项目2
  14. 声音均衡器怎么调好听_酷狗均衡器怎么调好听 - 卡饭网
  15. 使用IDEA 进行 安卓开发
  16. 记一次手机本地时间修改引起的https请求失效的bug分享 转 萧竹
  17. 辰华宏命令(Macro Command)使用说明
  18. Android lua编辑工具,mlua app下载
  19. 服务器备案在什么位置,海外服务器怎么备案
  20. 利用python画曲线_利用Python绘制血药浓度-时间曲线——口服吸收一室模型

热门文章

  1. 抖音SSL Pinning绕过
  2. Postgresql Automatic Vacuuming
  3. Git配置SSH公钥
  4. 毕业论文中如何正确的添加引用参考文献
  5. 关于VSCode和electron系软件字体发虚/模糊的解决办法
  6. react native 保持屏幕常亮
  7. docker 镜像仓库之HUb
  8. 端粒效应《The Telemere Effect》程序员的养生指南(三)身心与生活
  9. 2021-01-03自我介绍
  10. Redis基础都不会,好意思出去面试?