...
时间函数
时间函数的说明如下:
时间函数 | 计算方法说明 | |
---|---|---|
同期 | 同期值 | 同期数据 |
同期比 | 本期值/同期值*100% | |
同期增长 | 本期值-同期值 | |
同期增长率 | (本期值 |
...
/同期值-1)*100% | ||
前期 | 前期值 | 前期数据 |
环比 | 本期值/前期值*100% | |
环比增长 | 本期值-前期值 | |
环比增长率 | (本期值 |
...
/前期值 -1 )*100% | |
期初期末 | 期初值(时点数) |
...
指的是上一日的数据 |
期末值(时点数) |
...
指的是最后一日(当日)的数据 |
期初值(累计值) |
...
指的是本年度中当日之前的所有数据之和 |
期末值(累计值) |
...
指的是本年度中当日及之前所有日期的数据之和 | ||
日均 | 年日均 | 从本年1月1日到当前日期的累计值除以从本年1月1日到当期日期天数 |
半年日均 | 半年累计值除以从本半年的第一天到当前日期的天数 | |
季日均 | 季累计值除以从本季1号到当前日期的天数 | |
月日均 |
...
月累计值除以从本月1号到当前日期的天数 |
旬日均 |
...
旬累计值除以从本旬第一天到当前日期的天数 | ||
累计值 | 年累值 | 从本年1月1日到当前日期的累计数 |
半年累值 | 从本半年的第一天到当前日期的累计数 | |
季累值 | 从本季的1号到当前日期的累计数 | |
月累值 | 从本月的1号到当前日期的累计数 | |
旬累值 |
...
从本旬的第一天到当前日期的累计数 | ||
增长值 | 比年初增长值 | 就是当前的时点值减去1月1号的时点值 |
比年初增长率 | (比年初增长值/1月1号的时点值)*100% | |
比季初增长值 | 当前的时点值减去当前日期所在季度的1号的时点值 | |
比季初增长率 | (比季初增长值/当前日期所在季度的1号的时点值)*100% | |
比月初增长值 | 当前的时点值减去当前日期所在月份的1号的时点值 | |
比月初增长率 | (比月初增长值/当前日期所在月份的1号的时点值)*100% |
时间计算逻辑
...
在进行时间计算时,是有一个时间频度的概念的,时间频度与基准时间层次或者行列区选择的时间层次有关,因而时间计算的逻辑也不同。
...
- 基准时间层次为“年”时,日的同期值为上一年同一天的数据,如:2015-01-01,在年报表中的同期值为 2014-01-01的数据;
...
- 基准时间层次为“月”时,日的同期值为上一月同一天的数据。如:05月01日,在月报表中的同期值为04月01日的数据。
...
透视分析的时间计算,按照如下逻辑规则进行时间频度确定:
时间计算 | 示例一 | 示例二 |
---|---|---|
同期 时间频度与时间计算字段的“基准时间层次”一致。 | 基准时间层次为“年”时,每个日期的同期值是取上一年同一天的数据。 比如2017年1季度1月的同期值就是2016年1季度1月的数量数据。 |
...
基准时间层次为“月”时,每个日期的同期值是取上一月同一天的数据。 比如2016年1季度2月的同期值就是2016年1季度1月的数量数据。 |
...
前期 时间频度与行列区选择的时间层次有关。 | 行列区选择的时间层次为:年份、季度、月份,则销售量的前期值为上一月的数据。 如图,2016年1季度2月的前期值为2016年1季度1月的数据。 | 行列区选择的时间层次为:年份、季度,则销售量的前期值为上一季度的数据。 如图,2016年2季度的前期值为2016年1季度的数据。 | ||||
期初计算逻辑: 期初值(时点数)指的是上一日的数据。 期初值(累计值)指的是本年度中当日之前的所有数据之和。 期末计算逻辑: 期末值(时点数)指的是最后一日(当日)的数据。 期末值(累计值)指的是本年度中当日及之前所有日期的数据之和。 |
...
注: 1、期初期末计算逻辑是以“日”为单位,待选列中必须含有“年、月、日”这三个时间层次。 2、累计值是不可跨年计算的。 3、期初值(时点数)和期末值(时点数)支持时间段查询。详情参见 期初值(时点数)/期末值(时点数)。 | 期初计算示例: 2016-09-04的上一日是 2016-09-03。 2016-09-04的期初值(时点数)就是2016-09-03的数据:77。 2016-09-04的期初值(累计值)就是2016年中从2016-09-01到2016-09-03的所有数据之和,即54+92+77=223 。 | 期末计算示例: 2016-09-04的期末值(时点数)就是当天的数据:321。 2016-09-04的期末值(累计值)就是2016年中从2016-09-01到2016-09-04所有数据之和,即54+92+77+321=544。 |
累计、日均、增长值、增长率 时间频度与时间计算字段的“基准时间层次”一致。 |
...
设置基准时间层次为“月”,表格如图: |
...
表格的时间计算解读如下: |
基准时间层次为“月”时,该报表的时间计算解读如下:
月累值:2016-01-08的月累值是指2016年1月1日至8日这八天数据的合计值,由于数据中只有1、2、3、8日的数据,则其月累计值即为这四天数据的合计值:621。 月日均:2016-01-08的月日均公式为“当月累值/天数”,月累值我们已经算出是“621”,天数从2016年1月1日至8日总计是8天,因此“621/8”的值约等于“77.63”即为其月日均。 比月初增长值:2016-01-08的比月初增长值为“2016-01-08这天的值减去当月第一天(2016-01-01)的值”即“51-254=-203”。 比月初增长率:2016-01-08的比月初增长率为“其比月初增长值/当月第一天(2016年1月1日)的值”即“-203/254”,其计算结果“- |
...
0.80”则为2016-01-08的比月初增长率。 |
...
...
锚 | ||||
---|---|---|---|---|
|
期初值(时间点数)和期末值(时点数)支持时间段的情形,下面我们将以下图的数据表为数据对比依据,通过示例来详细说明不同时间段情形的取数逻辑:
期初值(时间点数)和期末值(时点数)在各时间段情形中的取数逻辑如下:
情景描述 | 取数逻辑 | 取数示例 |
---|---|---|
有时间段条件; 数据表格中无任何时间信息字段; | 时间频度基准为“年-月”; 期初值(时点数):取时间段内起点月份上一个月最后一天的值,从原库中取数; 期末值(时点数):取时间段内终点月份最后一天的值; | 表格中没有“年、季、月、日”中任意的时间信息,因此频度基准是“年-月”,并且根据筛选条件的日期范围,则: 期初值(时点数)取的是上个月最后一天的数据,即2013-01-31的值; 期末值(时点数)取的是当前时间段最后一天的数据,即2013-02-17的值。 |
有时间段条件; 数据表格中有时间信息字段; | 以时间信息字段的时间频度为基准; 期初值(时点数):取前一频度最后一天的值,从原库中取数; 期末值(时点数):取时间段内当前频度最后一天的值; | 表格中没有“年、季”的时间信息,因此频度基准是“季”,并且根据筛选条件的日期范围,则: 期初值(时点数)取的是上一季度最后天的数据,即2013-01-31的值; 期末值(时点数)取的是当季最后一天的数据,即2013-02-17的值。 |
二次计算
二次计算是指对已封装了时间计算的业务属性进行再加工计算。
示例
在保险业中,通常需要计算赔付率,其公式为:赔付率=(已决赔款+期末未决赔款-期初未决赔款)/满期保费。下面,我们通过自己定义的数据库做为示例演示。
1、在已定义的“赔款信息”业务主题中创建“期末未决赔款”业务属性,通过在业务属性中使用期末值计算实现,如下图所示:
2、在已定义的“赔款信息”业务主题中创建“期初未决赔款”业务属性,通过在业务属性中使用期初值计算实现,如下图所示:
3、在透视分析中,基于已定义的“赔款信息”业务主题创建“赔付率”计算字段,如下图所示:
4、透视分析应用以上字段获取相关数据,如下图所示:
注意事项
1、同期和前期值支持的最小时间层次都是周,是没有日同期和日前期的概念,所以不支持勾选生成时间层次的日期字段的情况下计算时间计算。
2、具有时间计算时,通过参数限制数据的范围时,如果有日期字段,则此字段必须为时间计算的时间层次生成字段。
3、支持将日期字段直接作为条件设置时间范围,此字段必须是时间层次生成引用字段。
4、过滤器中时间字段要支持正确的时间计算,需要满足该时间字段必须为透视分析中时间层次的引用字段,并且需要在过滤器设置中勾选“作为时间计算边界约束条件”选项。