activity_engagement 插件

在滑动时间线窗口中,根据 ID 列计算活动参与比率。

activity_engagement 插件可用于计算 DAU/WAU/MAU(每日/每周/每月活动)。

语法

T| evaluateactivity_engagement(IdColumn,TimelineColumn, [Start,End,] InnerActivityWindow,OuterActivityWindow [,dim1,dim2, ...])

详细了解语法约定

参数

客户 类型​​ 必需 说明
T string 用于计算参与的表格输入。
IdCoumn string 列的名称,其 ID 值表示用户活动。
TimelineColumn string 表示时间线的列的名称。
Start datetime 分析开始时段。
End datetime 分析结束时段。
InnerActivityWindow timespan 内部范围分析窗口时段。
OuterActivityWindow timespan 外部范围分析窗口时段。
dim1, dim2, ... dynamic 维度列的数组,用于切分活动指标计算。

返回

返回一个表,该表具有某个内部范围窗口内 ID 值的非重复计数、某个外部范围窗口内 ID 值的非重复计数,以及每个现有维度组合的每个内部范围窗口时段的活动率。

输出表架构如下:

TimelineColumn dcount_activities_inner dcount_activities_outer activity_ratio dim1 .. dim_n
类型:自 TimelineColumn 起 long long Double .. .. ..

示例

DAU/WAU 计算

下面的示例通过随机生成的数据计算 DAU/WAU(每日活动用户/每周活动用户比率)。

// Generate random data of user activities
let _start = datetime(2017-01-01);
let _end = datetime(2017-01-31);
range _day from _start to _end  step 1d
| extend d = tolong((_day - _start)/1d)
| extend r = rand()+1
| extend _users=range(tolong(d*50*r), tolong(d*50*r+100*r-1), 1) 
| mv-expand id=_users to typeof(long) limit 1000000
// Calculate DAU/WAU ratio
| evaluate activity_engagement(['id'], _day, _start, _end, 1d, 7d)
| project _day, Dau_Wau=activity_ratio*100 
| render timechart 

Graph displaying the ratio of daily active users to weekly active users as specified in the query.

DAU/MAU 计算

下面的示例通过随机生成的数据计算 DAU/WAU(每日活动用户/每周活动用户比率)。

// Generate random data of user activities
let _start = datetime(2017-01-01);
let _end = datetime(2017-05-31);
range _day from _start to _end  step 1d
| extend d = tolong((_day - _start)/1d)
| extend r = rand()+1
| extend _users=range(tolong(d*50*r), tolong(d*50*r+100*r-1), 1) 
| mv-expand id=_users to typeof(long) limit 1000000
// Calculate DAU/MAU ratio
| evaluate activity_engagement(['id'], _day, _start, _end, 1d, 30d)
| project _day, Dau_Mau=activity_ratio*100 
| render timechart 

Graph displaying the ratio of daily active users to monthly active users as specified in the query.

使用附加维度计算 DAU/MAU

下面的示例使用附加维度 (mod3) 通过随机生成的数据计算 DAU/WAU(每日活动用户/每周活动用户比率)。

// Generate random data of user activities
let _start = datetime(2017-01-01);
let _end = datetime(2017-05-31);
range _day from _start to _end  step 1d
| extend d = tolong((_day - _start)/1d)
| extend r = rand()+1
| extend _users=range(tolong(d*50*r), tolong(d*50*r+100*r-1), 1) 
| mv-expand id=_users to typeof(long) limit 1000000
| extend mod3 = strcat("mod3=", id % 3)
// Calculate DAU/MAU ratio
| evaluate activity_engagement(['id'], _day, _start, _end, 1d, 30d, mod3)
| project _day, Dau_Mau=activity_ratio*100, mod3 
| render timechart 

Graph displaying the ratio of daily active users to monthly active users with modulo 3 as specified in the query.