2.3.4 Use bins and histograms

Create Bin

Histograms 直方图是Bar Chart的一种, 但是直方图的创建有一个条件, 那就是你要先创建Bin.

如果你点击右侧的按钮, 就能自动跳转到Create Bin的课程.

什么是直方图

直方图从学术上来讲是一种探索数据分布规律的的图表, x轴上代表的是数据的区间, Y轴上代表的是有多少个个体.

我们以一个班级里所有同学的身高为例, 我们可以按照每5cm, 划分出不同的区间:

比如从150cm-155cm启示为一个区间, 155-160, 160-165, 一直划分到190-195, 195-200等等.

在Y轴上, 一般表示的是在这个数据区间的个体, 如果150-155 这个区间上的Y轴显示是5, 那么代表这个区间里有5个同学, 依次类推.

直方图的统计学意义

直方图在统计学上来讲有非常重要的意义. 它是观察数据如何分布的重要工具. 对于没有接触过统计的同学, 我在这里稍微讲一下什么是分布.

分布简单来说就是哪些区间里的数据多, 哪些区间里的数据少. 在大多数时候, 数据都不是均匀分布的, 比如一个高中班级的所有同学的身高大部分都在160到180之间, 而180以上或者160一下相对就要小一些, 那么研究数据在哪集中, 数据在哪稀疏就是分布.

分布有很多种, 可能你最经常听到的就是正态分布, 也就做Normal Distribution. Normal Distribution你不用太去深究它的数学意义, 初学者只要知道如果直方图显示的数据在中间的一些部分非常密集, 而两边非常稀疏的话, 这就是一个正态分布. 我在下边放了一个类似正态分布的截图, 一般正态分布的直方图就长这样.

正态分布

创建直方图

当我们把创建好的Bin放在Columns Shelf, 把Measure放在Rows Shelf的时候, 一个直方图就做好了. 直方图跟我们之前创建的柱状图没有什么特别大的区别. 你可以把直方图理解为一个特殊的柱状图

1. 这个柱状图的X轴是Bin而不再是我们之前所使用的什么Region, Customer Name啊

2. Bin的内部是有严格的大小顺序的, 也就是Bin本身虽然是一个Dimension, 但是! 它也是有顺序的, 这是Bin跟其他Dimension很不一样的地方.

在下边的动图当中, 我会展示以Profit作为分析对象, 我想要知道每个Profit Bin里有多少个Order ID的这样一个Histogram是怎样创建的.

首先根据Profit创建一个Bin, Bin Size设置为5

把Profit(bin) 放在Columns Shelf上

把Order ID放在Rows上, 然后选择Measure, Count Distinct

但此时还是很难看出什么规律, 我添加了一个Filter把Profit限制在-100到100之间

直方图真正的难点

直方图真正的难点在我看来是如何精准的把你要分析的问题跟当前的数据结构联系起来,从而创建正确的Bin.

我以下边的这个需求为例来解释一下:

你接收到的需求: 我们想要分析订单的利润分配, 看看大多数的定单利润是多少.

转化成Technical的Description就是 先计算每个订单的总利润→根据这个总利润创建Bin → 使用这个Bin作为直方图的X轴 → 使用Count(Order ID)作为直方图的Y轴

那么在这里最容易犯错的就是第一步, 你可能会直接就根据Profit来创建Bin, 但是真正的难点其实并不在Histogram, 而是在于你没有意识到这个Profit并不是Order的Profit. 并且如果意识到了, 如何创建这个计算

如何去解决这个难点

如同运动员需要训练肌肉记忆一样, 我们的头脑在做数据分析的过程当中也需要训练. 今天这一课这个小章节并不会讲述具体的方法,而是试图在你心中埋下这个种子. 在Tableau外, 我们仍然需要一些训练来帮助Tableau内的工作. 就像你锻炼基础体能, 虽然不会帮助你具体的游泳技术, 但是能提高你整体的基础力量. 我在这里所提及的这个基础训练对应的是数据层级思维的训练. 这需要有意识的培训.

我在下一阶段的课程当中会系统的讲述, 什么是数据层级思维, 如何将这种思维应用在每个Tableau项目前的准备工作当中.