更新时间:2024-10-22 GMT+08:00
分享

新建维度

分析的数据并不能直接从数据表中获取,而需要基于原始数据进行加工时,可以新建维度。

前提条件

  • 已开通DataArts Insight服务。
  • 已创建项目,请参见创建项目

新建维度测试步骤

  1. 登录智能数据洞察控制台
  2. 单击管理控制台左上角的,选择区域。
  3. 单击左下角的企业项目选择企业项目。
  4. 在控制台项目列选择对应的项目,单击进入项目页面。
  5. 在项目页面单击“数据管理 > 数据集”进入数据集页面。
  6. 选择需要创建维度的数据集,单击数据集名称,进入数据集页面。
  7. 在数据集编辑页面,单击“新建维度”进入新建维度页面。
    图1 新建维度
  8. 配置参数后,单击“确定”,完成维度创建。
    1. 创建方式:公式编辑。数据类型:数值、文本、日期、日期时间。
      1. 详细参数说请参考表1
        • 表达式中输入的括号需在英文输入法下的括号。
        • 函数请使用各个数据源支持的函数。
        表1 参数说明

        参数名

        说明

        点击引用函数

        通过函数对数据进行加工,支持日期函数、文本函数、数值函数的设置。

        点击引用字段

        数据集的维度和度量的字段。

        字段表达式

        字段的熟悉表达式,直观帮助您理解数据加工的过程。

        表2 日期函数

        函数

        用法

        说明

        CURRENT_DATE

        CURRENT_DATE()

        返回当前日期。

        CURRENT_TIME

        CURRENT_TIME()

        返回当前时间。

        NOW

        NOW()

        返回当前日期和时间。

        UNIX_TIMESTAMP

        UNIX_TIMESTAMP()

        以UNIX时间戳的形式返回当前时间。

        UNIX_TIMESTAMP

        UNIX_TIMESTAMP(d)

        将时间d以UNIX时间戳的形式返回。

        FROM_UNIXTIME

        FROM_UNIXTIME(d)

        将UNIX时间戳的时间转换为普通格式的时间。

        MONTH

        MONTH(d)

        返回日期d中的月份值,1到12之间。

        DAYOFWEEK

        DAYOFWEEK(d)

        计算日期d今天是星期几。

        DAYOFYEAR

        DAYOFYEAR(d)

        计算日期d是本年的第几天。

        DAYOFMONTH

        DAYOFMONTH(d)

        计算日期d是本月的第几天。

        QUARTER

        QUARTER(d)

        返回日期d是第几季节,返回1到4。

        HOUR

        HOUR(t)

        返回t中的小时值。

        MINUTE

        MINUTE(t)

        返回t中的分钟值。

        SECOND

        SECOND(t)

        返回t中的秒钟值。

        DATEDIFF

        DATEDIFF(d1,d2)

        计算日期d1和d2之间相隔天数。

        ADDDATE

        ADDDATE(d,n)

        计算起始日期d加上n天的日期。

        ADDDATE

        ADDDATE(d,INTERVAL expr type)

        计算起始日期d加上一个时间段后的日期。

        SUBDATE

        SUBDATE(d,n)

        日期d减去n天后的日期。

        SUBDATE

        SUBDATE(d,INTERVAL expr type)

        日期d减去一个时间段后的日期。

        DATE_FORMAT

        DATE_FORMAT(d,f)

        按表达式f的要求显示日期d。

        TIME_FORMAT

        TIME_FORMAT(t,f)

        按表达式f的要求显示时间t。

        表3 文本函数

        函数

        用法

        说明

        CHAR_LENGTH

        CHAR_LENGTH(s)

        返回字符串s的字符数。

        LENGTH

        LENGTH(s)

        返回字符串s的长度。

        CONCAT

        CONCAT(s1,s2,...)

        将字符串s1,s2等多个字符串合并为一个字符。

        CONCAT_WS

        CONCAT_WS(x,s1,s2,...)

        以第一个参数为分割符,链接第二个以后的所有参数。

        UPPER

        UPPER(s)

        将字符串s的所有字母变成大写字母。

        LOWER

        LOWER(s)

        将字符串s的所有字母变成小写字母。

        LEFT

        LEFT(s,n)

        返回字符串s的前n字符。

        RIGHT

        RIGHT(s,n)

        返回字符串s的后n个字符。

        LPAD

        LPAD(s1,len,s2)

        字符串s2来填充s1的开始处,使字符串长度达到len。

        RPAD

        RPAD(s1,len,s2)

        字符串s2来填充s1的结尾处,使字符串长度达到len。

        LTRIM

        LTRIM(s)

        去掉字符串s开始处的空格。

        RTRIM

        RTRIM(s)

        去掉字符串s结尾处的空格。

        TRIM

        TRIM(s1 FROM s)

        去掉字符串s和结尾处的字符串s1。

        REPEAT

        REPEAT(s,n)

        将字符串s重复n次。

        REPLACE

        REPLACE(s,s1,s2)

        将字符串s2替代字符串s中的字符串s1。

        SUBSTRING

        SUBSTRING(s,n,len)

        获取从字符串s中的第n个位置开始长度为len的字符串。

        LOCATE

        LOCATE(s1,s)

        从字符串s中获取s1的开始位置。

        INSTR

        INSTR(s,s1)

        从字符串s中获取s1的开始位置。

        REVERSE

        REVERSE(s)

        将字符串s的顺序反过来。

        MD5

        MD5(str)

        可以对字符串str进行散列,可以用于一些普通的不需要解密的数据加密。

        表4 数值函数

        函数

        用法

        说明

        ABS

        ABS(x)

        返回x的绝对值。

        CEIL

        CEIL(x)

        返回大于或等于x的最小整数。

        FLOOR

        FLOOR(x)

        返回小于或等于x的最大整数。

        RANDOM

        RANDOM()

        返回0.0至1.0之间的随机数。

        SIGN

        SIGN(x)

        返回x的符号,x是负数、0、正数,分别返回-1、0和1。

        PI

        PI()

        返回圆周率。

        TRUNC

        TRUNC(x, y)

        返回数值x保留到小数点后y位的值。

        ROUND

        ROUND(x)

        返回离x最近的整数。

        ROUND

        ROUND(x, y)

        保留x小数点后y位的值,但截断时需要进行四舍五入。

        POWER

        POWER(x,y)

        返回x的y次方。

        SQRT

        SQRT(x)

        返回x的平方根。

        EXP

        EXP(x)

        返回e的x次方。

        MOD

        MOD(x,y)

        返回x被y除后的余数。

        LOG

        LOG(x)

        ORA和TD兼容模式下,表现为以10为底的对数。MySQL兼容模式下,表现为自然对数。

        RADIANS

        RADIANS(x)

        将角度转化为弧度。

        DEGREES

        DEGREES(x)

        将弧度转换为角度。

        SIN

        SIN(x)

        求正弦值,参数是弧度。

        ASIN

        ASIN(x)

        求反正弦值,参数是弧度。

        COS

        COS(x)

        求余弦值,参数是弧度。

        ACOS

        ACOS(x)

        求反余弦值,参数是弧度。

        TAN

        TAN(x)

        求正切值,参数是弧度。

        ATAN

        ATAN(x)

        求反正切值,参数是弧度。

        COT

        COT(x)

        求余切值,参数是弧度。

    2. 可视化编辑:仅能按照单维度派生分组维度,如想要根据多维度派生新的复杂维度,请使用公式编辑器。
      1. 分组字段选择。
      2. 分组设置,选择分组字段值。
      3. 设置好分组后,单击刷新预览,单击“确定”。

示例:数据集怎样新建维度

数据集的维度用于将数据按维度值分组的场景,例如本例中对年龄字段分组,分为未成年、青年、中年、老年这几个大区,分别查看每个年龄商品的购买情况种情况。

  1. 登录智能数据洞察控制台
  2. 单击管理控制台左上角的,选择区域。
  3. 单击左下角的企业项目选择企业项目。
  4. 在控制台项目列选择对应的项目,单击进入项目页面。
  5. 单击“数据管理 > 数据集”,进入数据集列表页面。
  6. 选择数据集,单击数据集名称,进入编辑页面。
  7. 在“数据预览”页的右侧单击“新建维度”。
  8. 编辑维度信息。
    • 示例1:本例使用可视化编辑方式新建年龄分组,并定义分组年龄段如下:
      1. 可视化编辑方式仅能按照单维度派生分组维度,如想要根据多维度派生新的复杂维度,请使用公式编辑器。
        1. 0岁≤未成年<18岁
        2. 18岁≤青年<40岁
        3. 40岁≤中年<60岁
        4. 老年≥60岁
          图2 新建维度年龄分组
      2. 单击“确认”完成维度信息的添加。
      3. 在数据集预览页面单击“刷新预览”,可以查看新建的维度信息。
        图3 查看维度信息
      4. 在后续的仪表板制作和问答中即可问答与新的维度相关的信息。
        图4 使用新建维度制作仪表板
    • 示例2:本例使用公式编辑:商品价格=商品销售价格-商品利润,新建维度商品价格
      1. 编辑维度信息
        图5 新建维度
      2. 单击“确认”保存维度信息。
      3. 在数据集预览页面单击“刷新预览”,可以查看新建的维度信息。
        图6 查看维度信息
      4. 在后续的仪表板制作和问答中即可问答与新的维度相关的信息。

相关文档