本文档主要介绍算术函数的语法规则,包括参数解释、函数示例等。

说明 如果值为负数,请使用op_neg(正数)函数,例如:您要表示-1,请使用op_neg(1)。

函数列表

类型 函数 说明
多值计算比较 op_sum 对传入值进行求和操作。
基础计算 op_abs 对传入值进行绝对值操作。
op_div_floor 对传入值进行整除操作。
op_div_true 对传入值进行除法操作。
op_pow 对值进行幂值计算操作。
op_mul 对传入值进行乘法运算。
op_neg 计算传入值的相反数。
op_mod 对传入值进行模计算。
op_sub 对传入值进行减法运算。
op_round 对传入值进行四舍五入操作。
数学计算 mat_ceil 对传入值进行向上取整操作。
mat_exp 以常数e为底的指数函数。
mat_fabs 计算传入值的绝对值。
mat_floor 对传入值进行向下取整操作。
mat_log 计算传入值的对数。
mat_log10 计算以10为基数的传入值的对数。
mat_sqrt 计算传入值的平方根。
mat_degrees 将弧度转换为角度。
mat_radians 将角度转换为弧度。
mat_sin 计算传入值弧度的正弦值。
mat_cos 计算传入值弧度的余弦值。
mat_tan 计算传入值弧度的正切值。
mat_acos 计算传入值的反余弦弧度值。
mat_asin 计算传入值的反正弦弧度值。
mat_atan 计算传入值的反正切弧度值。
mat_atan2 计算坐标值的反正切值。
mat_atanh 计算传入值的反双曲正切值。
mat_hypot 计算传入值得欧几里德范数。
MATH_PI 数据常数 pi
MATCH_E 数学常数 e

op_sum

  • 函数格式
    op_sum(值1, 值2, ...)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    值1 数字或数字字符串 待计算的值。
    值2 数字或数字字符串 待计算的值。
  • 返回结果

    返回多个传入值的求和结果。

  • 函数示例:计算course_price和goods_price总价。
    原始日志:
    course_price: 12
    goods_price: 2
    加工规则:
    e_set("account", op_sum(v("course_price"),v("goods_price")))
    加工结果:
    course_price: 12
    goods_price: 2
    account: 14

op_abs

  • 函数格式
    op_abs(值)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    数字或数字字符串 待计算的值。
  • 返回结果

    返回传入值的绝对值。

  • 函数示例:计算course_price值得绝对值。
    原始日志:
    course_price: -4
    加工规则:
    e_set("op_abs", op_abs(v("course_price")))
    加工结果:
    course_price: -4
    op_abs: 4

op_div_floor

  • 函数格式
    op_div_floor(值1, 值2)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    值1 数字或数字字符串 待计算的值。
    值2 数字或数字字符串 待计算的值。
  • 返回结果

    返回值1与值2整除的结果。

  • 函数示例:计算course_price单价。
    原始日志:
    course_price: 4
    count: 2
    加工规则:
    e_set("op_div_floor", op_div_floor(v("course_price"),v("count")))
    加工结果:
    course_price: 4
    count: 2
    op_div_floor: 2

op_div_true

对传入值进行除法操作。
说明 该函数支持自动转换数据类型,输入string或者int类型的数据即可。
  • 函数格式
    op_div_true(值1, 值2)
  • 参数说明
    参数名称 字段属性 是否必填 说明
    值1 数字字符串/ Number 填入需要被计算的值1。
    值2 数字字符串/ Number 填入需要被计算的值2。
  • 返回结果

    返回值1/值2的结果。

  • 函数示例
    • 示例1:计算fruit_price单价
      e_set("op_div_true", op_div_true(v("fruit_price"),v("count")))
      处理前日志格式:
      fruit_price: 9
      count: 2
      处理后日志格式:
      fruit_price: 9
      count: 2
      op_div_true: 4.5
    • 示例2:计算加速度(四舍五入),a = (one_speed-two_speed)/time
      e_set("a", op_round(op_div_true(op_sub(v("one_speed"),v("two_speed")),v("time"))),2)
      处理前日志格式:
      one_speed: 9
      two_speed: 2
      time: 3
      处理后日志格式:
      one_speed: 9
      two_speed: 2
      time: 3
      a: 2.33

op_pow

  • 函数格式
    op_pow(值1,值2)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    值1 数字或数字字符串 待计算的值。
    值2 数字或数字字符串 待计算的值。
  • 返回结果

    返回值1的值2次方的结果。

  • 函数示例:计算course的pow次方的值。
    原始日志:
    course: 100
    pow: 2
    加工规则:
    e_set("pow_course", op_pow(v("course"),v("pow")))
    加工结果:
    course: 100
    pow: 2
    pow_course: 10000

op_mul

  • 函数格式
    op_mul(值1,值2)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    值1 数字、字符串、元祖、列表等 待计算的值。
    值2 数字 待计算的值。
  • 返回结果
    返回值1和值2相乘的结果。
    • 数字:返回相乘的结果。
    • 字符串、元祖、列表等:返回扩大倍数的原类型。
  • 函数示例
    • 示例1:
      原始日志:
      course: 10
      price: 23
      加工规则:
      e_set("account", op_mul(ct_int(v("course")),ct_int(v("price"))))
      加工结果:
      course: 10
      price: 23
      account: 230
    • 示例2:
      原始日志:
      course: "abc"
      加工规则:
      e_set("course", op_mul(v("course"), 3))
      加工结果:
      course: "abcabcabc"

op_neg

  • 函数格式
    op_neg(值)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    数字或数字字符串 待计算的值。
  • 返回结果

    返回传入值的相反数。

  • 函数示例
    原始日志:
    course: -100
    加工规则:
    e_set("account", op_neg(v("course_price")))
    加工结果:
    course: -100
    account: 100

op_mod

  • 函数格式
    op_mod(值1,值2)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    值1 数字或数字字符串 待计算的值。
    值2 数字或数字字符串 待计算的值。
  • 返回结果

    返回值1对值2取模的结果。

  • 函数示例
    原始日志:
    course: 4
    count: 3
    加工规则:
    e_set("op_mod", op_mod(v("course"),v("count")))
    加工结果:
    course: 4
    count: 3
    op_mod: 1

op_sub

  • 函数格式
    op_sub(值1,值2)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    值1 数字或数字字符串 待计算的值。
    值2 数字或数字字符串 待计算的值。
  • 返回结果

    返回值1减去值2的结果。

  • 函数示例:计算count减去count_apple剩下多少。
    原始日志:
    count: 6
    count_apple: 3
    加工规则:
    e_set("sub_number", op_sub(v("count"),v("count_apple")))
    加工结果:
    count: 6
    count_apple: 3
    sub_number:  3

op_round

  • 函数格式
    op_round(值,小数点位数)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    数字或数字字符串 待计算的值。
    小数点位数 数字 表示四舍五入后保留的小数点位数,默认值为 0。
  • 返回结果

    返回传入值的四舍五入的结果。

  • 函数示例:返回price小数点后1位数。
    原始日志:
    price: 4.56
    加工规则:
    e_set("round_price", op_round(v("price"),1))
    加工结果:
    price: 4.56
    round_price: 4.6

mat_ceil

  • 函数格式
    mat_ceil(值)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    数字或数字字符串 待计算的值。
  • 返回结果

    返回大于或者等于指定值的最小整数。

  • 函数示例
    原始日志:
    price: 4.1
    加工规则:
    e_set("mat_ceil", mat_ceil(v("price")))
    加工结果:
    price: 4.1
    mat_ceil: 5

mat_exp

  • 功能介绍

    以常数e为底的指数函数。

  • 函数格式
    mat_exp(值)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    数字或数字字符串 待计算的值。
  • 返回结果

    返回e的次幂结果。

  • 函数示例
    原始日志:
    e: 1
    加工规则:
    e_set("e_x", mat_exp(v("e")))
    加工结果:
    e: 1
    e_x: 2.718281828459045

mat_fabs

  • 功能介绍

    计算传入值的绝对值。

  • 函数格式
    mat_fabs(值)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    数字或数字字符串 待计算的值。
  • 返回结果

    返回传入值的绝对值。

  • 函数示例
    原始日志:
    course_price: -10
    加工规则:
    e_set("mat_fabs", mat_fabs(v("course_price")))
    加工结果:
    course_price: -10
    mat_fabs: 10.0

mat_floor

  • 功能介绍

    对传入值进行向下取整操作。

  • 函数格式
    mat_floor(值)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    数字或数字字符串 待计算的值。
  • 返回结果

    返回小于或者等于指定值的最大整数。

  • 函数示例
    原始日志:
    course_price: 4.9
    加工规则:
    e_set("mat_floor", mat_floor(v("course_price")))
    加工结果:
    course_price: 4.9
    mat_floor: 4

mat_log

  • 功能介绍

    计算传入值的对数。

  • 函数格式
    mat_log(值1,值2)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    值1 数字或数字字符串 待计算的值。
    值2 数字或数字字符串 待计算的值。
  • 返回结果

    返回传入值的对数。

  • 函数示例
    原始日志:
    number1: 100
    number2: 10
    加工规则:
    e_set("mat_log", mat_log(v("number1"),v("number2")))
    加工结果:
    number1: 100
    number2: 10
    mat_log: 2.0

mat_log10

  • 功能介绍

    计算以10为基数的传入值的对数。

  • 函数格式
    mat_log10(值)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    数字或数字字符串 待计算的值。
  • 返回结果

    返回以10为基数的传入值的对数结果。

  • 函数示例
    原始日志:
    number: 100
    加工规则:
    e_set("number2", mat_log10(v("number")))
    加工结果:
    number: 100
    numbe2: 2.0

mat_sqrt

  • 功能介绍

    计算传入值的平方根。

  • 函数格式
    mat_sqrt(值)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    数字或数字字符串 待计算的值。
  • 返回结果

    返回传入值的平方根结果。

  • 函数示例
    原始日志:
    number1: 100
    加工规则:
    e_set("sqrt_account", mat_sqrt(v("number1")))
    加工结果:
    number1: 100
    sqrt_account: 10.0

mat_degrees

  • 功能介绍

    将弧度转换为角度。

  • 函数格式
    mat_degrees(值)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    数字或数字字符串 待计算的值。
  • 返回结果

    返回将弧度转成角度的结果。

  • 函数示例
    原始日志:
    num: 1
    加工规则:
    e_set("mat_degrees", mat_degrees(v("num")))
    加工结果:
    num: 1
    mat_degrees: 57.29577951308232

mat_radians

  • 功能介绍

    将角度转换为弧度。

  • 函数格式
    mat_radians(值)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    数字或数字字符串 待计算的值。
  • 返回结果

    返回将角度转换为弧度结果。

  • 函数示例
    原始日志:
    rad: 30
    加工规则:
    e_set("mat_radians", mat_radians(v("rad")))
    加工结果:
    rad: 30
    mat_radians: 0.5235987755982988

mat_sin

  • 功能介绍

    计算传入值弧度的正弦值。

  • 函数格式
    mat_sin(值)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    数字或数字字符串 待计算的值。
  • 返回结果

    返回传入值弧度的正弦结果。

  • 函数示例
    原始日志:
    sin: 90
    加工规则:
    e_set("mat_sin", mat_sin(v("sin")))
    加工结果:
    sin: 90
    mat_sin: 0.8939966636005579

mat_cos

  • 功能介绍

    计算传入值弧度的余弦值。

  • 函数格式
    mat_cos(值)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    数字或数字字符串 待计算的值。
  • 返回结果

    返回传入值的弧度的余弦结果。

  • 函数示例
    原始日志:
    cos: 30
    加工规则:
    e_set("mat_cos", mat_cos(v("cos")))
    加工结果:
    cos: 30
    mat_cos: 0.15425144988758405

mat_tan

  • 功能介绍

    计算传入值弧度的正切值。

  • 函数格式
    mat_tan(值)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    数字或数字字符串 待计算的值。
  • 返回结果

    返回传入值的弧度的正切值。

  • 函数示例
    原始日志:
    tan: 30
    加工规则:
    e_set("mat_tan", mat_tan(v("tan")))
    加工结果:
    tan: 30
    mat_tan: 1.6197751905438615

mat_acos

  • 功能介绍

    计算传入值的反余弦弧度值。

  • 函数格式
    mat_acos(值)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    数字或数字字符串 待计算的值。
  • 返回结果

    返回传入值的反余弦弧度值。

  • 函数示例
    原始日志:
    acos: 1
    加工规则:
    e_set("mat_acos", mat_acos(v("acos")))
    加工结果:
    acos: 1
    mat_acos: 0.0

mat_asin

  • 功能介绍

    计算传入值的反正弦弧度值。

  • 函数格式
    mat_asin(值)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    数字或数字字符串 待计算的值。
  • 返回结果

    返回传入值的反正弦弧度值。

  • 函数示例
    原始日志:
    asin: 1
    加工规则:
    e_set("mat_asin", mat_asin(v("asin")))
    加工结果:
    asin: 1
    mat_asin: 1.5707963267948966

mat_atan

  • 功能介绍

    计算传入值的反正切弧度值。

  • 函数格式
    mat_atan(值)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    数字或数字字符串 待计算的值。
  • 返回结果

    返回传入值的反正切弧度值。

  • 函数示例
    原始日志:
    atan: 1
    加工规则:
    e_set("mat_atan", mat_atan(v("atan")))
    加工结果:
    atan: 1
    mat_atan: 0.7853981633974483

mat_atan2

  • 功能介绍

    计算坐标值的反正切值。

  • 函数格式
    mat_atan2(x,y)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    x 数字或数字字符串 X坐标值。
    y 数字或数字字符串 Y坐标值。
  • 返回结果

    返回坐标值的反正切值。

  • 函数示例
    原始日志:
    atan1: 1
    atan2: 2
    加工规则:
    e_set("mat_atan2", mat_atan2(v("atan1"),v("atan2")))
    加工结果:
    atan1: 1
    atan2: 2
    mat_atan2: 0.4636476090008061

mat_atanh

  • 功能介绍

    计算传入值的反双曲正切值。

  • 函数格式
    mat_atanh(值)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    数字或数字字符串 X坐标值。
  • 返回结果

    返回传入值的反双曲正切值。

  • 函数示例
    原始日志:
    atanh: 1
    加工规则:
    e_set("mat_atanh", mat_atanh(v("atanh")))
    加工结果:
    atanh: 1
    mat_atanh: 0.7615941559557649

mat_hypot

  • 功能介绍

    计算传入值得欧几里德范数。

  • 函数格式
    mat_hypot(值1,值2)
  • 参数说明
    参数名称 参数类型 是否必填 说明
    值1 数字或数字字符串 X坐标值。
    值2 数字或数字字符串 Y坐标值。
  • 返回结果

    返回传入值的欧几里德范数。

  • 函数示例
    原始日志:
    hypot1: 1
    hypot2: 2
    加工规则:
    e_set("mat_hypot", mat_hypot(v("hypot1"),v("hypot2")))
    加工结果:
    hypot1: 1
    hypot2: 2
    mat_hypot: 3.605551275463989