适用于:✅Azure 数据资源管理器
使用在滑动窗口上执行聚合示例中介绍的技术,计算回溯期内滑动窗口中值的计数和非重复计数。 该插件通过 evaluate 运算符调用。
语法
T | evaluate sliding_window_counts(IdColumn, TimelineColumn, Start, End, LookbackWindow, Bin , [dim1, dim2, ...])
详细了解语法约定。
参数
| 客户 | 类型 | 必需 | 说明 |
|---|---|---|---|
| T | string |
✔️ | 输入表格表达式。 |
| IdColumn | string |
✔️ | 列的名称,其 ID 值表示用户活动。 |
| TimelineColumn | string |
✔️ | 表示时间线的列的名称。 |
| Start | int、long、real、datetime 或 timespan | ✔️ | 分析开始时段。 |
| End | int、long、real、datetime 或 timespan | ✔️ | 分析结束时段。 |
| LookbackWindow | int、long、real、datetime 或 timespan | ✔️ | 回溯期间。 此值应是 Bin 值的倍数,否则 LookbackWindow 将向下舍入为 Bin 值的倍数。 例如,对于过去 7d 的 dcount 个用户:LookbackWindow = 7d。 |
| Bin | int、long、real、datetime、timespan 或 string | ✔️ | 分析步长时间段。 可能的字符串值为 week、month 和 year,与其对应的时间段分别为 startofweek、startofmonth、startofyear。 |
| dim1, dim2, ... | string |
维度列的列表,用于切分活动指标计算。 |
返回
返回一个表,该表包含回溯期间每个时间线时段(根据 bin)和每个现有维度组合的 ID 的计数和非重复计数值。
输出表架构如下:
| TimelineColumn | dim1 |
.. | dim_n |
count |
dcount |
|---|---|---|---|---|---|
| 类型:自 TimelineColumn 起 | .. | .. | .. | long |
long |
示例
计算过去一周内每天分析时段的用户计数和 dcounts。
let start = datetime(2017 - 08 - 01);
let end = datetime(2017 - 08 - 07);
let lookbackWindow = 3d;
let bin = 1d;
let T = datatable(UserId: string, Timestamp: datetime)
[
'Bob', datetime(2017 - 08 - 01),
'David', datetime(2017 - 08 - 01),
'David', datetime(2017 - 08 - 01),
'John', datetime(2017 - 08 - 01),
'Bob', datetime(2017 - 08 - 01),
'Ananda', datetime(2017 - 08 - 02),
'Atul', datetime(2017 - 08 - 02),
'John', datetime(2017 - 08 - 02),
'Ananda', datetime(2017 - 08 - 03),
'Atul', datetime(2017 - 08 - 03),
'Atul', datetime(2017 - 08 - 03),
'John', datetime(2017 - 08 - 03),
'Bob', datetime(2017 - 08 - 03),
'Betsy', datetime(2017 - 08 - 04),
'Bob', datetime(2017 - 08 - 05),
];
T
| evaluate sliding_window_counts(UserId, Timestamp, start, end, lookbackWindow, bin)
输出
| Timestamp | 计数 | dcount |
|---|---|---|
| 2017-08-01 00:00:00.0000000 | 5 | 3 |
| 2017-08-02 00:00:00.0000000 | 8 | 5 |
| 2017-08-03 00:00:00.0000000 | 13 | 5 |
| 2017-08-04 00:00:00.0000000 | 9 | 5 |
| 2017-08-05 00:00:00.0000000 | 7 | 5 |
| 2017-08-06 00:00:00.0000000 | 2 | 2 |
| 2017-08-07 00:00:00.0000000 | 1 | 1 |