数学関数と演算子¶
数学演算子¶
演算子 |
説明 |
---|---|
|
加算 |
|
減算 |
|
乗算 |
|
除算(整数除算は切り捨てを行います) |
|
剰余(余り) |
数学関数¶
- abs(x) -> [入力と同じ]()¶
x
の絶対値を返します。
- cbrt(x) -> double()¶
x
の立方根を返します。
- ceil(x) -> [入力と同じ]()¶
これは
ceiling()
のエイリアスです。
- ceiling(x) -> [入力と同じ]()¶
x
を最も近い整数に切り上げた値を返します。
- cosine_similarity(x, y) -> double()¶
疎ベクトル
x
とy
の間のコサイン類似度を返します。SELECT cosine_similarity(MAP(ARRAY['a'], ARRAY[1.0]), MAP(ARRAY['a'], ARRAY[2.0])); -- 1.0
- degrees(x) -> double()¶
ラジアン単位の角度
x
を度に変換します。
- e() -> double()¶
定数オイラー数を返します。
- exp(x) -> double()¶
オイラー数を
x
のべき乗で累乗した値を返します。
- floor(x) -> [入力と同じ]()¶
x
を最も近い整数に切り捨てた値を返します。
- from_base(string, radix) -> bigint()¶
指定された
radix
を基数として解釈したstring
の値を返します。
- ln(x) -> double()¶
x
の自然対数を返します。
- log2(x) -> double()¶
x
の底が2の対数を返します。
- log10(x) -> double()¶
x
の底が10の対数を返します。
- mod(n, m) -> [入力と同じ]()¶
n
をm
で割った余り(剰余)を返します。
- pi() -> double()¶
定数Piを返します。
- pow(x, p) -> double()¶
これは
power()
のエイリアスです。
- power(x, p) -> double()¶
x
をp
乗した値を返します。
- radians(x) -> double()¶
度単位の角度
x
をラジアンに変換します。
- rand() -> double()¶
これは
random()
のエイリアスです。
- random() -> double()¶
0.0 <= x < 1.0の範囲の疑似乱数値を返します。
- random(n) -> [入力と同じ]()¶
0からn(nは含まない)までの疑似乱数を返します。
- secure_rand() -> double()¶
これは
secure_random()
のエイリアスです。
- secure_random() -> double()¶
0.0 <= x < 1.0の範囲の暗号論的に安全な乱数値を返します。
- secure_random(lower, upper) -> [入力と同じ]()¶
lower <= x < upper の範囲の暗号論的に安全な乱数値を返します。ここで lower < upper である必要があります。
- round(x) -> [入力と同じ]()¶
x
を最も近い整数に丸めた値を返します。
- round(x, d) -> [入力と同じ]()¶
x
を小数点以下d
桁に丸めた値を返します。
- sign(x) -> [入力と同じ]()¶
x
の符号関数を返します。すなわち、引数が0の場合、0を返し、
引数が0より大きい場合、1を返し、
引数が0より小さい場合、-1を返します。
double型の引数の場合、この関数はさらに、
引数がNaNの場合、NaNを返し、
引数が+Infinityの場合、1を返し、
引数が-Infinityの場合、-1を返します。
- sqrt(x) -> double()¶
x
の平方根を返します。
- to_base(x, radix) -> varchar()¶
x
のradix
進数表現を返します。
- truncate(x) -> double()¶
小数点以下の桁を切り捨てることで、
x
を整数に丸めた値を返します。
- truncate(x, n) -> double()¶
x
を小数点以下n
桁に切り捨てた値を返します。n
を負にすると、小数点から左にn
桁を切り捨てます。例:
truncate(REAL '12.333', -1)
-> 結果は10.0truncate(REAL '12.333', 0)
-> 結果は12.0truncate(REAL '12.333', 1)
-> 結果は12.3
- width_bucket(x, bound1, bound2, n) -> bigint()¶
指定された
bound1
とbound2
の境界とn
個のバケット数を持つ等幅ヒストグラムにおけるx
のビン番号を返します。
- width_bucket(x, bins) -> bigint()¶
配列
bins
で指定されたビンに従って、x
のビン番号を返します。bins
パラメーターはdouble型の配列である必要があり、ソートされた昇順であると想定されます。
確率関数: cdf¶
- beta_cdf(a, b, value) -> double()¶
指定されたa, bパラメータを持つベータ分布の累積分布関数を計算します: P(N < value; a, b)。a, bパラメータは正の実数でなければならず、valueは実数(すべてdouble型)でなければなりません。valueは[0, 1]の区間に存在する必要があります。
- binomial_cdf(numberOfTrials, successProbability, value) -> double()¶
与えられたnumberOfTrialsとsuccessProbability(1回の試行に対する)を持つ二項分布の累積分布関数を計算します: P(N < value)。successProbabilityは[0, 1]の範囲の実数値でなければならず、numberOfTrialsとvalueはnumberOfTrialsがvalue以上である正の整数でなければなりません。
- cauchy_cdf(median, scale, value) -> double()¶
与えられた中央値とスケール(gamma)パラメータを持つコーシー分布の累積分布関数を計算します: P(N; median, scale)。scaleパラメータは正のdouble型でなければなりません。valueパラメータは[0, 1]の区間のdouble型でなければなりません。
- chi_squared_cdf(df, value) -> double()¶
与えられたdf(自由度)パラメータを持つカイ二乗分布の累積分布関数を計算します: P(N < value; df)。dfパラメータは正の実数でなければならず、valueは非負の実数(両方ともDOUBLE型)でなければなりません。
- f_cdf(df1, df2, value) -> double()¶
与えられたdf1(分子の自由度)とdf2(分母の自由度)のパラメータを持つF累積分布関数を計算します: P(N < value; df1, df2)。分子と分母のdfパラメータは正の実数でなければなりません。valueは非負の実数でなければなりません。
- gamma_cdf(shape, scale, value) -> double()¶
与えられたshapeとscaleのパラメータを持つガンマ累積分布関数を計算します: P(N < value; shape, scale)。shapeとscaleのパラメータは正の実数でなければなりません。valueは非負の実数でなければなりません。
- laplace_cdf(mean, scale, value) -> double()¶
与えられたmeanとscaleのパラメータを持つラプラス累積分布関数を計算します: P(N < value; mean, scale)。meanとvalueは実数値でなければならず、scaleパラメータは正の値(すべてDOUBLE型)でなければなりません。
- normal_cdf(mean, sd, value) -> double()¶
与えられたmeanと標準偏差(sd)を持つ正規累積分布関数を計算します: P(N < value; mean, sd)。meanとvalueは実数値でなければならず、標準偏差は実数かつ正の値(すべてDOUBLE型)でなければなりません。
- poisson_cdf(lambda, value) -> double()¶
与えられたlambda(平均)パラメータを持つポアソン累積分布関数を計算します: P(N <= value; lambda)。lambdaパラメータは正の実数(DOUBLE型)でなければならず、valueは非負の整数でなければなりません。
- weibull_cdf(a, b, value) -> double()¶
与えられたパラメータa, bを持つワイブル累積分布関数を計算します: P(N <= value)。
a
とb
のパラメータは正のdouble型でなければならず、value
もdouble型でなければなりません。
確率関数:逆累積分布関数¶
- inverse_beta_cdf(a, b, p) -> double()¶
与えられたa, bパラメータを持つベータ累積分布関数の逆関数を、累積確率(p)に対して計算します: P(N < n)。a, bパラメータは正の実数値(すべてDOUBLE型)でなければなりません。確率pは区間[0, 1]に含まれる必要があります。
- inverse_binomial_cdf(numberOfTrials, successProbability, p) -> int()¶
与えられたnumberOfTrialsとsuccessProbability(単一試行の成功確率)を持つ二項累積分布関数の逆関数を、累積確率(p)に対して計算します: P(N <= n)。successProbabilityとpは[0, 1]の実数値でなければならず、numberOfTrialsは正の整数でなければなりません。
- inverse_cauchy_cdf(median, scale, p) -> double()¶
与えられたパラメータmedianとscale(gamma)を持つコーシー累積分布関数の逆関数を、確率pに対して計算します。scaleパラメータは正のdouble型でなければなりません。確率pは区間[0, 1]のdouble型でなければなりません。
- inverse_chi_squared_cdf(df, p) -> double()¶
与えられたdf(自由度)パラメータを持つカイ二乗累積分布関数の逆関数を、累積確率(p)に対して計算します: P(N < n)。dfパラメータは正の実数値でなければなりません。確率pは区間[0, 1]に含まれる必要があります。
- inverse_gamma_cdf(shape, scale, p) -> double()¶
与えられたshapeとscaleのパラメータを持つガンマ累積分布関数の逆関数を、累積確率(p)に対して計算します: P(N < n)。shapeとscaleパラメータは正の実数値でなければなりません。確率pは区間[0, 1]に含まれる必要があります。
- inverse_f_cdf(df1, df2, p) -> double()¶
与えられたdf1(分子の自由度)とdf2(分母の自由度)のパラメータを持つF累積分布関数の逆関数を、累積確率(p)に対して計算します: P(N < n)。分子と分母のdfパラメータは正の実数でなければなりません。確率pは区間[0, 1]に含まれる必要があります。
- inverse_laplace_cdf(mean, scale, p) -> double()¶
与えられたmeanとscaleのパラメータを持つラプラス累積分布関数の逆関数を、累積確率(p)に対して計算します: P(N < n)。meanは実数値でなければならず、scaleは正の実数値(両方ともDOUBLE型)でなければなりません。確率pは区間[0, 1]に含まれる必要があります。
- inverse_normal_cdf(mean, sd, p) -> double()¶
与えられたmeanと標準偏差(sd)を持つ正規累積分布関数の逆関数を、累積確率(p)に対して計算します: P(N < n)。meanは実数値でなければならず、標準偏差は実数かつ正の値(両方ともDOUBLE型)でなければなりません。確率pは区間(0, 1)に含まれる必要があります。
- inverse_poisson_cdf(lambda, p) -> integer()¶
与えられたlambda(平均)パラメータを持つポアソン累積分布関数の逆関数を、累積確率(p)に対して計算します。P(N <= n; lambda) = pとなるようなnの値を返します。lambdaパラメータは正の実数(DOUBLE型)でなければなりません。確率pは区間[0, 1)に含まれる必要があります。
- inverse_weibull_cdf(a, b, p) -> double()¶
与えられたパラメータ
a
,b
を持つワイブル累積分布関数の逆関数を、確率p
に対して計算します。a
,b
パラメータは正のdouble値でなければなりません。確率p
は区間[0, 1]のdouble型でなければなりません。
統計関数¶
- wilson_interval_lower(successes, trials, z) -> double()¶
ベルヌーイ試行プロセスのウィルソンスコア区間の下限を、zスコア
z
で指定された信頼度で返します。
- wilson_interval_upper(successes, trials, z) -> double()¶
ベルヌーイ試行プロセスのウィルソンスコア区間の上限を、zスコア
z
で指定された信頼度で返します。
三角関数¶
すべての三角関数の引数はラジアンで表現されます。単位変換関数degrees()
とradians()
を参照してください。
- acos(x) -> double()¶
x
のアークコサインを返します。
- asin(x) -> double()¶
x
のアークサインを返します。
- atan(x) -> double()¶
x
のアークタンジェントを返します。
- atan2(y, x) -> double()¶
y / x
のアークタンジェントを返します。
- cos(x) -> double()¶
x
のコサインを返します。
- cosh(x) -> double()¶
x
の双曲線コサインを返します。
- sin(x) -> double()¶
x
のサインを返します。
- tan(x) -> double()¶
x
のタンジェントを返します。
- tanh(x) -> double()¶
x
の双曲線タンジェントを返します。
浮動小数点関数¶
- infinity() -> double()¶
正の無限大を表す定数を返します。
- is_finite(x) -> boolean()¶
x
が有限であるかどうかを判定します。
- is_infinite(x) -> boolean()¶
x
が無限大であるかどうかを判定します。
- is_nan(x) -> boolean()¶
x
が非数(NaN)であるかどうかを判定します。
- nan() -> double()¶
非数(NaN)を表す定数を返します。