数学#

函数

描述

ABS

返回输入列的绝对值。

CBRT

返回一个数的立方根(∛)。

CEIL

返回最接近零的最近整数。

DIV

返回除法的整数商。

EXP

计算给定值的指数。

FLOOR

返回离零最近的整数。

LN

计算给定值的自然对数。

LOG

计算给定值的base对数。

LOG2

计算给定值的以2为底的对数。

LOG10

计算给定值的以10为底的对数。

LOG1P

计算“给定值加一”的自然对数。

MOD

返回一个数值表达式除以另一个数值表达式的余数。

PI

返回一个(非常好的)𝜋的近似值。

POW

返回给定指数的幂值。

ROUND

将一个数字四舍五入到x位小数(默认:0),远离零。

SIGN

返回参数的符号为-1、0或+1。

SQRT

返回一个数的平方根(√)。

绝对值#

返回输入列的绝对值。

示例:

df = pl.DataFrame({"a": [-1.0, 0.0, 1.0, -2.0]})
df.sql("""
  SELECT a, ABS(a) AS abs_a FROM self
""")
# shape: (4, 2)
# ┌──────┬───────┐
# │ a    ┆ abs_a │
# │ ---  ┆ ---   │
# │ f64  ┆ f64   │
# ╞══════╪═══════╡
# │ -1.0 ┆ 1.0   │
# │ 0.0  ┆ 0.0   │
# │ 1.0  ┆ 1.0   │
# │ -2.0 ┆ 2.0   │
# └──────┴───────┘

CBRT#

返回一个数的立方根(∛)。

示例:

df = pl.DataFrame({"a": [1.0, 2.0, 4.0]})
df.sql("""
  SELECT a, CBRT(a) AS cbrt_a FROM self
""")
# shape: (3, 2)
# ┌─────┬──────────┐
# │ a   ┆ cbrt_a   │
# │ --- ┆ ---      │
# │ f64 ┆ f64      │
# ╞═════╪══════════╡
# │ 1.0 ┆ 1.0      │
# │ 2.0 ┆ 1.259921 │
# │ 4.0 ┆ 1.587401 │
# └─────┴──────────┘

CEIL#

返回最接近零的最近整数。

别名

CEILING

示例:

df = pl.DataFrame({"a": [0.1, 2.8, 4.30]})
df.sql("""
  SELECT a, CEIL(a) AS ceil_a FROM self
""")
# shape: (3, 2)
# ┌─────┬────────┐
# │ a   ┆ ceil_a │
# │ --- ┆ ---    │
# │ f64 ┆ f64    │
# ╞═════╪════════╡
# │ 0.1 ┆ 1.0    │
# │ 2.8 ┆ 3.0    │
# │ 4.3 ┆ 5.0    │
# └─────┴────────┘

DIV#

返回除法的整数商。

示例:

df = pl.DataFrame({"a": [-10.0, 6.5, 25.0]})
df.sql("""
  SELECT a, DIV(a, 2) AS a_div_2, DIV(a, 5) AS a_div_5 FROM self
""")
# shape: (3, 3)
# ┌───────┬─────────┬─────────┐
# │ a     ┆ a_div_2 ┆ a_div_5 │
# │ ---   ┆ ---     ┆ ---     │
# │ f64   ┆ i64     ┆ i64     │
# ╞═══════╪═════════╪═════════╡
# │ -10.0 ┆ -5      ┆ -2      │
# │ 6.5   ┆ 3       ┆ 1       │
# │ 25.0  ┆ 12      ┆ 5       │
# └───────┴─────────┴─────────┘

指数函数#

计算给定值的指数。

示例:

df = pl.DataFrame({"a": [1, 2, 4]})
df.sql("""
  SELECT a, EXP(a) AS exp_a FROM self
""")
# shape: (3, 2)
# ┌─────┬──────────┐
# │ a   ┆ exp_a    │
# │ --- ┆ ---      │
# │ i64 ┆ f64      │
# ╞═════╪══════════╡
# │ 1   ┆ 2.718282 │
# │ 2   ┆ 7.389056 │
# │ 4   ┆ 54.59815 │
# └─────┴──────────┘

FLOOR#

返回离零最近的整数。

示例:

df = pl.DataFrame({"a": [0.1, 2.8, 4.30]})
df.sql("""
  SELECT a, FLOOR(a) AS floor_a FROM self
""")
# shape: (3, 2)
# ┌─────┬─────────┐
# │ a   ┆ floor_a │
# │ --- ┆ ---     │
# │ f64 ┆ f64     │
# ╞═════╪═════════╡
# │ 0.1 ┆ 0.0     │
# │ 2.8 ┆ 2.0     │
# │ 4.3 ┆ 4.0     │
# └─────┴─────────┘

LN#

计算给定值的自然对数。

示例:

df = pl.DataFrame({"a": [1, 2, 4]})
df.sql("""
  SELECT a, LN(a) AS ln_a FROM self
""")
# shape: (3, 2)
# ┌─────┬──────────┐
# │ a   ┆ ln_a     │
# │ --- ┆ ---      │
# │ i64 ┆ f64      │
# ╞═════╪══════════╡
# │ 1   ┆ 0.0      │
# │ 2   ┆ 0.693147 │
# │ 4   ┆ 1.386294 │
# └─────┴──────────┘

LOG#

计算给定值的base对数。

示例:

df = pl.DataFrame({"a": [1, 2, 4]})
df.sql("""
  SELECT a, LOG(a, 16) AS log16_a FROM self
""")
# shape: (3, 2)
# ┌─────┬─────────┐
# │ a   ┆ log16_a │
# │ --- ┆ ---     │
# │ i64 ┆ f64     │
# ╞═════╪═════════╡
# │ 1   ┆ 0.0     │
# │ 2   ┆ 0.25    │
# │ 4   ┆ 0.5     │
# └─────┴─────────┘

LOG2#

计算给定值的以2为底的对数。

示例:

df = pl.DataFrame({"a": [1, 2, 4]})
df.sql("""
  SELECT a, LOG2(a) AS a_log2 FROM self
""")
# shape: (3, 2)
# ┌─────┬────────┐
# │ a   ┆ a_log2 │
# │ --- ┆ ---    │
# │ i64 ┆ f64    │
# ╞═════╪════════╡
# │ 1   ┆ 0.0    │
# │ 2   ┆ 1.0    │
# │ 4   ┆ 2.0    │
# └─────┴────────┘

LOG10#

计算给定值的以10为底的对数。

示例:

df = pl.DataFrame({"a": [1, 2, 4]})
df.sql("""
  SELECT a, LOG10(a) AS log10_a FROM self
""")
# shape: (3, 2)
# ┌─────┬─────────┐
# │ a   ┆ log10_a │
# │ --- ┆ ---     │
# │ i64 ┆ f64     │
# ╞═════╪═════════╡
# │ 1   ┆ 0.0     │
# │ 2   ┆ 0.30103 │
# │ 4   ┆ 0.60206 │
# └─────┴─────────┘

LOG1P#

计算“给定值加一”的自然对数。

示例:

df = pl.DataFrame({"a": [1, 2, 4]})
df.sql("""
  SELECT a, LOG1P(a) AS log1p_a FROM self
""")
# shape: (3, 2)
# ┌─────┬──────────┐
# │ a   ┆ log1p_a  │
# │ --- ┆ ---      │
# │ i64 ┆ f64      │
# ╞═════╪══════════╡
# │ 1   ┆ 0.693147 │
# │ 2   ┆ 1.098612 │
# │ 4   ┆ 1.609438 │
# └─────┴──────────┘

MOD#

返回一个数值表达式除以另一个数值表达式的余数。

示例:

df = pl.DataFrame({"x": [0, 1, 2, 3, 4]})
df.sql("""
  SELECT x, MOD(x, 2) AS a_mod_2 FROM self
""")
# shape: (5, 2)
# ┌─────┬─────────┐
# │ x   ┆ a_mod_2 │
# │ --- ┆ ---     │
# │ i64 ┆ i64     │
# ╞═════╪═════════╡
# │ 0   ┆ 0       │
# │ 1   ┆ 1       │
# │ 2   ┆ 0       │
# │ 3   ┆ 1       │
# │ 4   ┆ 0       │
# └─────┴─────────┘

PI#

返回𝜋的一个(良好)近似值。

示例:

df.sql("""
  SELECT PI() AS pi FROM self
""")
# shape: (1, 1)
# ┌──────────┐
# │ pi       │
# │ ---      │
# │ f64      │
# ╞══════════╡
# │ 3.141593 │
# └──────────┘

POW#

返回给定指数的幂值。

别名

POWER

示例:

df = pl.DataFrame({"x": [0, 1, 2, 4]})
df.sql("""
  SELECT x, POW(x, 8) AS x_pow_8 FROM self
""")
# shape: (4, 2)
# ┌─────┬─────────┐
# │ x   ┆ x_pow_8 │
# │ --- ┆ ---     │
# │ i64 ┆ i64     │
# ╞═════╪═════════╡
# │ 0   ┆ 0       │
# │ 1   ┆ 1       │
# │ 2   ┆ 256     │
# │ 4   ┆ 65536   │
# └─────┴─────────┘

ROUND#

将一个数字四舍五入到x位小数(默认:0),远离零。

示例:

df = pl.DataFrame({"x": [-0.45, -1.81, 2.25, 3.99]})
df.sql("""
  SELECT x, ROUND(x) AS x_round, ROUND(x, 1) AS x_round_1 FROM self
""")
# shape: (4, 3)
# ┌───────┬─────────┬───────────┐
# │ x     ┆ x_round ┆ x_round_1 │
# │ ---   ┆ ---     ┆ ---       │
# │ f64   ┆ f64     ┆ f64       │
# ╞═══════╪═════════╪═══════════╡
# │ -0.45 ┆ -0.0    ┆ -0.5      │
# │ -1.81 ┆ -2.0    ┆ -1.8      │
# │ 2.25  ┆ 2.0     ┆ 2.3       │
# │ 3.99  ┆ 4.0     ┆ 4.0       │
# └───────┴─────────┴───────────┘

符号#

返回参数的符号为-1、0或+1。

示例:

df = pl.DataFrame({"x": [0.4, -1, 0, -2, 4]})
df.sql("""
  SELECT x, SIGN(x) AS sign_x FROM self
""")
# shape: (5, 2)
# ┌──────┬────────┐
# │ x    ┆ sign_x │
# │ ---  ┆ ---    │
# │ f64  ┆ i64    │
# ╞══════╪════════╡
# │ 0.4  ┆ 1      │
# │ -1.0 ┆ -1     │
# │ 0.0  ┆ 0      │
# │ -2.0 ┆ -1     │
# │ 4.0  ┆ 1      │
# └──────┴────────┘

平方根#

返回一个数的平方根(√)。

示例:

df = pl.DataFrame({"x": [2, 16, 4096, 65536]})
df.sql("""
  SELECT x, SQRT(x) AS sqrt_x FROM self
""")
# shape: (4, 2)
# ┌───────┬──────────┐
# │ x     ┆ sqrt_x   │
# │ ---   ┆ ---      │
# │ i64   ┆ f64      │
# ╞═══════╪══════════╡
# │ 2     ┆ 1.414214 │
# │ 16    ┆ 4.0      │
# │ 4096  ┆ 64.0     │
# │ 65536 ┆ 256.0    │
# └───────┴──────────┘