目录
此内容是否有帮助?

# 用户标签

# 一、用户标签的意义

用户标签是具有某一系列特征的人群集合,标签值是“一组相似人群”的集合,通过标签和标签值可以方便将人群结构化。

如:用户标签为“付费用户”,标签下有标签值分别为“大 R”、“中 R”、“小 R” 的 3 种群体。

通过某种创建方式,将相似特征用户按特征值汇总后组成标签,方便在各种模型中进行细分分析;同时,可以在看板内添加标签,日常数据监控更加方便

  1. 提供多种创建方式,适合更深度的用户群体下钻分析
  2. 同一维度下的多个相似人群组成标签,每种人群作为一个标签值,实现关联人群间的连接
  3. 标签可以创建不同日期的历史版本(备份),可以看不同标签值用户数随日期变化的情况
  4. 标签可以切换不同的分析主体,对应不同的计算逻辑和分析场景

# 二、用户标签的位置和适用角色

具有用户标签查看权限的用户从“用户分析-用户标签”进入,设置用户标签

公司超管
管理员
分析师
普通成员
查看标签列表




新增、编辑、删除自建非SQL标签




新增、编辑、删除自建SQL标签




编辑、删除其他人的标签




权限说明:

● 角色必有

▲ 角色默认有,可以没有

△ 角色默认没有,可以有

○ 角色必没有

# 三、用户标签的页面概览

点击“+新建标签”按钮,选择一种标签类型

完成整个标签创建流程

查看不同用户的标签情况

在模型筛选、分组项查看中使用标签

# 四、用户标签的使用场景

# 4.1 用户标签与标签值

用户标签是一组具有“同一维度下,多组相似人群”的集合,标签值是“一组相似人群”的集合。

如:用户标签为“付费用户”,标签下有标签值分别为“大 R”、“中 R”、“小 R”的 3 种群体。

属于某一标签的用户有且只有唯一的标签值,如果某一标签有历史版本则用户在该标签下的每份历史版本(每个日期)内的标签值可能不同

# 4.2 用户标签的创建

新建时,可选择“条件标签”、“ID 标签”、“首末次标签”、“指标值标签”、“SQL 标签”五种标签类型之一,选择后进入具体创建配置页面。

# 4.2.1 标签定义

对于所有标签,都需要先从已配置的分析主体中选择,默认选择预置分析主体(TA 用户 ID);标签创建后,分析主体不可修改

(1)条件标签

筛选特定行为条件或用户属性的用户,并赋予标签值;用户优先匹配至满足条件且顺序靠前的标签值中。

比如,可以创建“付费用户标签”,再通过自定义条件将用户分为高消费用户、中消费用户、低消费用户。后续可将该标签作为分组项,同时分析三种类型用户。

  • 自定义条件时,所有用户将按照标签值的先后顺序依次判断组成。即同一用户满足上层标签值后,将不再参与下层标签值筛选
  • 所有标签值中的用户共同组成了标签用户
  • 新增标签值始终在最后一个标签值后。创建时一个标签最多设置 20 组标签值。达到 20 时,无法新增
  • 条件标签的上限为 200 个

注意

如果标签的分析主体来源是事件属性则只能选择「做过某事」条件,不能选择「没做过某事」,也不可选择「用户属性满足」条件。同时,事件下拉列表里只有包含该属性的事件。

(2)首末次标签

指定时段内,用户完成首/末次事件的属性,作为标签值

举例:埋点层面没有记录用户的首次登录时间,但又需要通过首登日期去做分组或筛选条件

可以选取从开服日至今作为分析时段,以首次登录的时间作为用户的标签值。

  1. 分析时段:默认选中动态的「过去 7 天」,可选择动态或静态时间
  2. 首末次信息:可选择首次或者末次
  3. 完成事件:可选择任意一个物理事件或虚拟事件,可以筛选事件属性或用户属性
事件类型
可筛选的事件属性
物理事件
事件属性
虚拟事件
虚拟事件的事件属性(并集)

选择时间型事件属性作为筛选条件时,会将该属性偏移到项目的默认时区后再进行计算

  1. 分析属性(标签值):可选发生时间或事件属性,元属性、虚拟属性、维度表属性都可以进行选择,但不包括对象、对象组、对象组的子属性
  2. 数据类型将决定标签的数据类型,及使用标签时的关键字。
类型
属性
数据类型
预置指标
时间*
时间
事件属性指标
数值型属性
数值
列表型属性
列表
布尔型属性
布尔
时间型属性*
时间
文本型属性
文本

注意

  1. 即使有完成事件,当标签值为空时,该用户依然将会被剔除出标签;如果标签的分析主体是事件属性,则事件下拉列表仅可选择包含该事件属性的事件
  2. 时间或时间类型属性,都以偏移到项目默认时区后的值作为标签值

(3)指标值标签

指定时段内,用户完成事件的聚合指标,作为标签值。

比如,需要记录用户在一段时间内的累计付费数据,通过这个数据为用户分层。

那么可以将这段时间的付费金额总和作为标签值。再通过筛选或分组对用户进行全面分析。

  1. 创建时的标签条件设置

完成事件的用户将属于标签(指标为空的用户被剔除)

分析时段:默认选中动态的「过去 7 天」,可选择动态或静态时间

完成事件:可选择任意一个物理事件或虚拟事件或任意事件

事件的筛选条件:可以筛选事件属性或用户属性

事件类型
可筛选的事件属性
物理事件
事件属性
虚拟事件
虚拟事件的事件属性(并集)

选择时间型事件属性作为筛选条件时,会将该属性偏移到项目的默认时区后再进行计算

注意

如果标签的分析主体是事件属性,则事件下拉列表仅可选择包含该事件属性的事件

  1. 创建条件的标签值确定

通过分析指标确定用户的标签值,即(「事件」+「属性」+「计算方法」)或直接(「事件」+「计算方法」)

属性
计算方法
总次数
天数
小时数
数值型属性
总和、均值、中位数、最大值、最小值、去重数、方差、标准差、99分位数、95分位数、90分位数、80分位数、75分位数、70分位数、60分位数、40分位数、30分位数、25分位数、20分位数、10分位数、5分位数
列表型属性
列表去重数、列表元素去重数
布尔型属性
为真数、为假数、为空数、不为空数、去重数
时间型属性*
去重数
文本型属性
去重数
对象型属性
去重数
对象组型属性
去重数

发生的时间按照标签时区计算

  1. 编辑公式场景

每一个公式需要编辑显示名,公式中元素通过四则运算组成公式

  • 公式计算中各个组成部分的组成规范
事件描述
指标描述/数据类型
分析角度
任意事件
次数、天数、小时数
元事件
次数、天数、小时数
元事件
事件属性(数值型)
总和、均值、中位数、最大值、最小值、去重数、方差、标准差、99分位数、95分位数、90分位数、80分位数、75分位数、70分位数、60分位数、40分位数、30分位数、25分位数、20分位数、10分位数、5分位数
元事件
事件属性(列表型)
列表去重数、元素去重数
元事件
事件属性(布尔型)
为真数、为假数、为空数、不为空数、去重数
元事件
事件属性(其他类型)
去重数
  • 整体筛选条件与细分筛选条件

整体筛选条件的可选属性为:公式所有组成部分的公有事件属性或全部用户属性。

属性的筛选逻辑与事件分析一致。

所有用户样本为:满足整体筛选条件,且参与过组成部分中任一事件

  • 未参与事件的取值

用户在公式中的未参与事件的分析角度,值记为 0

  • 计算结果的异常情况

当使用除法时,可能出现除数为 0 的情况,此时数值无法计算。将定义为“未知”,该名用户将被剔除出标签。

(4)ID 标签

根据模板要求的规范上传 ID 定义标签用户,并同时赋予标签值,可以选择某一用户属性作为判断用户的关联字段

  • 第二列值相同的用户将组成同一个标签值
  • 如果用户没有标签值,那么该行记录将被抛弃,并在最后一步结果展示时给出提示
  • ID 上传创建的标签值,记录的独立标签值个数没有上限
  • ID 上传类型的标签,不可设置“更新方式”和“备份方式”

如果分析主体选择的是 TA 用户 ID(#user_id),可以选择某一用户属性作为判断用户的关联字段,上传当时符合选择的用户属性值(第一列)的 TA 用户 ID 都将被赋予对应的标签值;

如果选择的是其他分析主体,则会直接将上传文件里的第一列作为分析主体 ID,不会校验对应 ID 在当前已上报的数据内是否存在,在上传前请仔细检查。

举例来说:以区服 ID 作为分析主体,假设当前游戏只开到第 60 区服,上传的文件中仍然可以使用 61、62……作为分析主体 ID。

TIP

每个用户支持创建 50 个 ID 上传标签,到达上限后,可通过删除已有标签来继续添加。

一个项目支持创建 200 个标签(ID 上传标签除外),可以联系 TA 工作人员上调标签上限数。

(5)SQL 标签

基于 SQL 规则生成分析主体的标签值

  1. 创建时的标签条件设置

根据需要的逻辑,在 SQL 语句输入框写下对应的语句,查询结果需要两列,第一列为不重复的分析主体 ID,第二列为标签值。

如果语句涉及到事件发生的时间范围,可添加时间参数$Part_date,标签每次更新时都会基于当前的日期确定时间范围

  1. SQL 字典

在创建界面右侧,TA 提供了 SQL 字典,方便查看当前可用的表结构,包括事件表、用户表、维度表、临时表等,并复制相应的字段名或直接解析

注意

  1. 如果查询结果中,分析主体 ID 对应多个标签值,会从中随机选择一个作为分析主体 ID 的标签值,其余数据将被抛弃
  2. $Part_date 会受标签时区影响,事件时间会偏移到标签时区后再判断是否在选择的日期范围内

# 4.2.2 更新与备份

  1. 标签时区

如果当前项目有开启 项目时区,可在创建标签时选择标签时区,标签时区会影响计算得到的标签值,默认按项目默认时区进行计算,可根据需要进行调整

假设标签逻辑都为“今日”的付费事件.付费金额总和

  • 如果标签时区为 UTC+8,那么用户在 2022-05-10 的标签值就是以用户在 UTC+8 下的 2022-05-10 00:00:00 ~ 2022-05-10 23:59:59 的付费事件进行计算
  • 如果标签时区为 UTC-8,那么用户在 2022-05-10 的标签值就是以用户在 UTC-8 下的 2022-05-10 00:00:00 ~ 2022-05-10 23:59:59 的付费事件进行计算,即 UTC+8 下的 2022-05-10 16:00:00 ~ 2022-05-11 15:59:59

因此,对于需要按多个展示时区进行分析的场景,可在创建标签时选择所需标签时区,和模型分析时的时区保持一致

  1. 仅当标签类型不为“ID 上传”时可设置更新方式,默认选项为“手动更新”
  • 手动更新:创建完成后,标签数据将固定下来,可手动点击“更新数据”按钮计算并更新标签数据
  • 自动更新:创建完成后,系统将在每日指定时间以前一日作为基准日期计算并更新标签数据
  1. 仅当数据更新方式选择自动更新时可设置备份方式
  • 不备份:标签自动更新时,不会将数据备份为标签的历史版本
  • 自动备份:自动更新后,会将标签数据保存为基准日期的历史版本

注意:自动备份必须在设置「自动更新」的情况下才能生效,如果更新方式选择的是「手动更新」,则无论自动备份是否关闭,都不会进行自动备份

  1. 计算时间

如果项目默认时区晚于 UTC+8,或者为了兼容数据在 TA 集群外的流转,可以适当推后标签自动更新的时间点

注意:如果在 3.6 版本之前有设置过延迟时间,在新版本中将相应转化为计算时间,例如延迟 30 分钟将转化为 每日 0 时 30 分 进行自动更新

# 4.2.3 命名与备注

  • 标签名:标签名须控制在 24 个字符以内,并使用小写字母开头,可含小写字母、数字、下划线;标签创建后,标签名不可修改
  • 显示名:显示名须控制在 24 个字符以内
  • 备注(选填):备注须控制在 200 个字符以内

# 4.3 历史版本的操作

# 4.3.1 自动备份

如果自动备份开启,则在标签自动更新时,将更新的数据写入到过去那一天的历史版本中,即当日的自动更新任务同时完成了两件事情

# 4.3.2 手动备份

除了自动备份,还可主动对指定日期的历史版本进行计算,主要用于补充缺失版本、重算失败任务或更新标签计算逻辑等场景。

  • 重新计算:对于已经计算(备份)过的日期,可以点击“重新计算”按钮对该日期的数据进行计算
  • 批量计算:点击“批量计算”按钮,可以选择日期范围内的全部历史版本或者异常版本进行计算

注意:历史版本批量计算可能耗时较长,请选择合适的时间进行

TA 系统在手动备份时会尽可能还原当时的数据,如果标签规则中使用了用户属性(包括使用了用户属性的虚拟事件属性或维度表属性),需要在对话框内选择选项:

  • 是否使用用户历史数据:使用用户属性时,是否使用对应日期的用户属性备份数据
  • 用户历史数据缺失时的处理方式:该选项需要在勾选“是否使用用户历史数据”时才可以选择,如果该天的用户历史数据缺失,使用用户当前数据代替还是相对最近的数据代替

# 4.3.3 清理历史版本

如果该标签之前保存的历史版本已经不需要了,可以点击“清理历史版本按钮”,所选日期范围内全部的历史版本都将被清理

注意:清理历史版本的操作不可逆,在清理前请务必注意;如果不小心清理,可以参考前面的“批量计算”操作补回缺失版本的数据

# 4.4 用户标签在模型中的使用

# 4.4.1 用户标签下的筛选条件

用户标签筛选,进一步选择“标签值”的场景

用户标签中选择“标签”作为筛选项目时,属性逻辑、关联值与“文本”类型相同

关于标签筛选逻辑的列表

标签的数据类型
可选项
文本
等于、不等于、包括、不包括、有值、无值、正则匹配、正则不匹配
数值
等于、不等于、小于、小于等于、大于、大于等于、有值、无值、区间
时间
位于区间、小于等于、大于等于、相对当前日期、相对事件发生时刻、有值、无值
列表
存在元素、不存在元素、元素位置、有值、无值
布尔
为真、为假、有值、无值

# 4.4.2 用户标签分组项使用

选择用户分群、用户标签作为分组项时

分组项选项
分组下的分组项
用户标签
标签值、(null)

用户标签下的分组为“标签值”与(null)(相当于不属于标签),如果不想在数据中看到(null),可以在筛选条件里选择该标签“有值”

# 4.4.3 历史标签的使用

如果所使用的标签有历史版本,可以在筛选条件或者分组项使用时指定所需的版本

  • 最新版本:按用户最新的标签值计算
  • 动态匹配:按用户在事件发生当日的标签值计算
  • 历史版本:按用户在某个特定日期的标签值计算,仅可选择有数据的历史版本(日期)

注意:目前事件分析、留存分析、漏斗分析、分布分析、路径分析、间隔分析支持标签选择版本,属性分析仅能使用标签的最新版本

# 4.5 用户标签列表页

  • 通过点击标签名,可以进入用户标签详情页(数据详情);点击标签名旁边的 icon 可进入用户标签详情页(历史版本管理)
  • 点击右上角“新建标签”按钮可创建标签
  • 点击操作栏 icon 可以进行各种操作
    • 点击「编辑标签」可进入标签编辑页面
    • 点击「另存为」可将当前标签的条件带入标签新建页面
    • 点击「更新数据」会以当前日期作为基准更新日期重新计算标签最新版本
    • 点击「下载」可以直接下载用户标签数据(仅 ID 上传标签有该按钮)
    • 点击「删除」可以删除该标签。请注意,标签删除后使用该标签的报表、虚拟属性将不可用

# 4.6 用户标签详情页

用户标签详情页,包含标签基础信息、数据详情和历史版本管理三部分

# 4.6.1 标签基础信息

展示标签基础信息,和用户标签列表页展示内容基本一致

  • 点击「查看配置」即可打开详情弹窗,查看具体的创建条件

  • 点击标签名称旁边的「更多」按钮,可以进行操作,同用户标签列表页一致

# 4.6.2 数据详情

展示标签最新版本和历史版本的数据,最新版本将以「今天」的日期展示,默认会展示最近 31 天的数据(过去 30 天+最新版本),如果历史版本的时间跨度不到 30 天,即最早一份历史版本的日期在 30 天内,则展示从该日期到今天的数据。

如果标签值的类型是数值型、列表型或时间型,可以自定义数据的汇总方式

(1)表格展示

表格内展示按标签值分组后的用户数量及占比,同时展示「全部」,即有标签值的所有用户。点击带下划线的数字可以进入用户列表,和分析模型一致,用户列表除了属性外,还会展示标签值和标签日期。

表格支持两种展示样式,默认为按分组查看

  • 按分组查看

  • 按日期查看

(2)图表展示

如果标签有历史版本,则支持所有图表类型;如果标签没有历史版本,则只能按柱状图、饼图展示。当有历史版本的标签切换到柱状图或者饼图时,需要从日期范围内选择需要展示的版本

  • 折线图

  • 数值堆积图

  • 百分比堆积图

  • 柱状图

  • 饼图

# 4.6.3 历史版本管理

1.历史版本概览

展示历史版本宏观数据,包括跨越的时间段、包含天数、版本数,以及异常状态的版本数等等

2.历史版本列表

展示跨度内的每一天的历史版本信息以及状态,可在列表中进行操作

版本状态及说明:

  • 正常
  • 缺失:该日期没有历史版本
  • 过时(条件变更):该历史版本使用的标签逻辑和当前的标签逻辑不一致
  • 过时(类型变更):该历史版本的标签值的数据类型和当前的标签逻辑不一致
  • 计算中:正在计算中,计算完成后会有消息通知
  • 计算失败:计算发生异常,未成功计算
  • 排队状态:等待计算

# 五、最佳实践

# 5.1 获取历史行为指标

通过“指标值”标签,可以计算出每个用户历史行为的指标,比如历史总付费金额(即全生命周期付费额),启动应用的总次数以及总时长等等。这些总体指标,能够很好地对用户进行分层,无论是在属性分析中直接查看标签值的分布情况,还是在分析模型中使用标签做分组和筛选,标签都可以起到非常强大的作用。

# 5.2 获取首次行为

通过“首末次特征”标签,可以计算出每个用户首次产生某行为的时间,搭配虚拟属性可以获取首次事件标识(将标签中的首次时间和事件时间相比,相等则为首次,反之则不为首次)。在创建标签增加更多筛选条件,可以获取更为定制化的首次事件。

# 5.3 使用历史标签准确还原事件发生时的用户状态

同一个用户,随时间推移可能从“小 R”变为“大 R”,按用户付费级别分组的时候,应该把该用户昨天产生的行为,认为是小 R 产生的,今天产生的行为,认为是大 R 产生的。所以计算历史上用户的“总充值金额”标签后,将该标签作为分组项,按照“动态匹配”的方式,查看每日的数据,就能得到想要的结果了。

# 5.4 查看每天回流用户的表现

通过“自定义条件”标签,可以按以下条件筛选出当日回流用户:

  • 今天有登录
  • 过去 7 天没有任意事件(即未登录)

# 5.5 按账号统计累计充值金额

创建标签时,可以使用自定义分析主体作为标签对象,切换后逻辑也将相应调整;以付费事件为例,创建指标值标签:

  • 分析时段为自 1 月 1 日至今
  • 标签值为付费事件的付费金额总和
  • 分析主体为账号(用户属性,预置分析主体为角色,一个账号下可以有多个角色)

该逻辑代表的含义是,以 1 月 1 日至今,单个账号下所有角色的付费金额总和作为该账户 ID 的累计充值金额

关于分析主体的更多说明,可以参考分析主体

# 5.6 使用 SQL 标签统计连续登录天数

通过 SQL 标签,可以实现较为复杂的标签逻辑,比如按用户在过去 30 天的最大连续登录天数给用户打标签,示例如下

WITH
  dataset AS (
   SELECT
     "#user_id"
   , ta_date_trunc('day', "#event_time", 1) "date"
   FROM
     v_event_2
   WHERE ("$part_event" = 'login') AND ${PartDate:date1}
   GROUP BY "#user_id", ta_date_trunc('day', "#event_time", 1)
)

SELECT
  "#user_id"
, max(days_count) max_days
FROM
  (
   SELECT
     "#user_id"
   , start_date
   , count(1) days_count
   FROM
     (
      SELECT
        *
      , row_number() OVER (PARTITION BY "#user_id" ORDER BY "date" ASC) row_number
      , date_add('day', -(row_number() OVER (PARTITION BY "#user_id" ORDER BY "date" ASC)), "date") start_date
      FROM
        dataset
      ORDER BY "#user_id" ASC, "date" ASC
   )
   GROUP BY "#user_id", start_date
   ORDER BY "#user_id" ASC, start_date ASC
)
GROUP BY "#user_id"
ORDER BY max_days desc