acos
導入バージョン: v1.1.0
引数の逆余弦を返します。
構文
acos(x)引数
戻り値
x の逆余弦を返します。 Float*
例
使用例
SELECT acos(0.5);1.0471975511965974acosh
導入バージョン: v20.12.0
逆双曲線余弦を返します。
構文
acosh(x)引数
戻り値
ラジアン単位の角度を返します。値の範囲: 0 ≤ acosh(x) < +∞。Float64
例
使用例
SELECT acosh(1)0asin
導入バージョン: v1.1.0
指定された引数の逆正弦を計算します。
引数が [-1, 1] の範囲にある場合は、[-pi() / 2, pi() / 2] の範囲の値を返します。
構文
asin(x)引数
戻り値
指定された引数 x の逆正弦の値を返します。Float64
例
inverse
SELECT asin(1.0) = pi() / 2, sin(asin(1)), asin(sin(1))1 1 0.9999999999999999float32
SELECT toTypeName(asin(1.0::Float32))Float64nan
SELECT asin(1.1), asin(-2), asin(inf), asin(nan)nan nan nan nanasinh
導入バージョン: v20.12.0
逆双曲線正弦を返します。
構文
asinh(x)引数
戻り値
ラジアン単位の角度を返します。値の範囲: -∞ < asinh(x) < +∞。Float64
例
基本的な使い方
SELECT asinh(0)0atan
導入バージョン: v1.1.0
引数の逆正接を返します。
構文
atan(x)引数
戻り値
x のアークタンジェントを返します。Float*
例
使用例
SELECT atan(1);0.7853981633974483atan2
導入バージョン: v20.12.0
正の x 軸から点 (x, y) ≠ (0, 0) への半直線までのユークリッド平面上の角度を、ラジアンで表した atan2 を返します。
構文
atan2(y, x)引数
y— レイが通過する点の y 座標。(U)Int*またはFloat*またはBFloat16またはDecimal*x— レイが通過する点の x 座標。(U)Int*またはFloat*またはBFloat16またはDecimal*
戻り値
-π < θ ≤ π を満たす角度 θ をラジアン単位で返します。Float64
例
使用例
SELECT atan2(1, 1)0.7853981633974483atanh
導入バージョン: v20.12.0
逆双曲線正接を返します。
構文
atanh(x)引数
戻り値
ラジアン単位の角度を返します。値の範囲: -∞ < atanh(x) < +∞ Float64
例
使用例
SELECT atanh(0)0cbrt
導入バージョン: v1.1.0
引数の三乗根を返します。
構文
cbrt(x)引数
戻り値
x の立方根を返します。Float*
例
使用例
SELECT cbrt(8);2cos
導入バージョン: v1.1.0
引数のコサインを返します。
構文
cos(x)引数
戻り値
x のコサインを返します。Float*
例
使用例
SELECT cos(0);1cosh
導入バージョン: v20.12.0
引数の双曲線余弦を返します。
構文
cosh(x)引数
戻り値
1 ≤ cosh(x) < +∞ の範囲の値を返します。Float64
例
基本的な使い方
SELECT cosh(0)1degrees
導入バージョン: v22.2.0
ラジアンを度数に変換します。
構文
degrees(x)引数
戻り値
x を度単位に変換した値を返します。Float64
例
基本的な使い方
SELECT degrees(3.141592653589793)180e
導入バージョン: v1.1.0
オイラー数 (e) を返します。
構文
e()引数
- なし。
戻り値
オイラー定数 Float64 を返します。
例
使用例
SELECT e();2.718281828459045erf
導入バージョン: v1.1.0
x が非負の場合、erf(x/(σ√2)) は、標準偏差 σ の正規分布に従う確率変数が、期待値から x を超えて離れた値を取る確率です。
構文
erf(x)引数
戻り値
誤差関数の値を返します。Float*
例
3シグマルール
SELECT erf(3 / sqrt(2))┌─erf(divide(3, sqrt(2)))─┐
│ 0.9973002039367398 │
└─────────────────────────┘erfc
導入バージョン: v1.1.0
x の値が大きい場合でも、精度を損なうことなく 1-erf(x) に近い数値を返します。
構文
erfc(x)引数
戻り値
補誤差関数の値 Float* を返します
例
使用例
SELECT erfc(0);1exp
導入バージョン: v1.1.0
e の x 乗を返します。ここで、x は関数に指定する引数です。
構文
exp(x)引数
戻り値
e^x を返します。Float*
例
基本的な使い方
SELECT round(exp(-1), 4)┌─round(exp(-1), 4)─┐
│ 0.3679 │
└───────────────────┘exp10
導入バージョン: v1.1.0
指定された引数を指数とする 10 の累乗を返します。
構文
exp10(x)引数
戻り値
Float* 型の 10^x を返します
例
使用例
SELECT exp10(2);100exp2
導入バージョン: v1.1.0
指定された引数を指数とする 2 のべき乗を返します。
構文
exp2(x)引数
戻り値
2^x を Float* 型で返します
例
使用例
SELECT exp2(3);8factorial
導入バージョン: v22.11.0
整数値の階乗を計算します。
0 の階乗は 1 です。同様に、factorial() 関数は任意の負の値に対しても 1 を返します。
入力引数に指定できる正の最大値は 20 です。21 以上の値を指定すると例外が発生します。
構文
factorial(n)引数
n— 階乗を計算する対象の整数値。最大値は 20 です。(U)Int8/16/32/64
戻り値
入力値の階乗を UInt64 として返します。入力が 0 または負の値の場合は 1 を返します。UInt64
例
使用例
SELECT factorial(10)3628800hypot
導入バージョン: v20.12.0
直角三角形の斜辺の長さを返します。
hypot は、非常に大きい数や非常に小さい数を二乗する際に生じる問題を回避します。
構文
hypot(x, y)引数
x— 直角三角形の一方の直角辺。(U)Int*またはFloat*またはBFloat16またはDecimal*y— 直角三角形のもう一方の直角辺。(U)Int*またはFloat*またはBFloat16またはDecimal*
戻り値
直角三角形の斜辺の長さを返します。Float64
例
基本的な使い方
SELECT hypot(1, 1)1.4142135623730951intExp10
導入バージョン: v1.1.0
exp10 と同様ですが、UInt64 型の数値を返します。
構文
intExp10(x)引数
戻り値
10^x を返します。UInt64
例
使用例
SELECT intExp10(2);100intExp2
導入バージョン: v1.1.0
exp2 と同様ですが、UInt64 型の値を返します。
構文
intExp2(x)引数
戻り値
2^x を返します。 UInt64
例
使用例
SELECT intExp2(3);8isPrime
導入バージョン: v26.5.0
引数が素数であれば 1、そうでなければ 0 を返します。
小さい値には正確なルックアップ用ビットマップを使用し、より大きい値には決定論的な Miller-Rabin テスト を使用します。結果は、サポートされているすべての入力型に対して正確です。
より広いビット幅の符号なし整数型 (UInt128、UInt256) については、代わりに isProbablePrime を使用してください。
構文
isPrime(n)引数
戻り値
n が素数の場合は 1、それ以外の場合は 0 を返します。UInt8
例
素数
SELECT isPrime(17)1合成数
SELECT isPrime(18)0大きな UInt64 型の素数
SELECT isPrime(18446744073709551557)1UInt64 の最大値
SELECT isPrime(18446744073709551615)0isProbablePrime
導入バージョン: v26.5.0
引数がおそらく素数であれば 1、確実に合成数であれば 0 を返します。
UInt8、UInt16、UInt32、UInt64 では、結果は厳密で、
isPrime と一致します。rounds 引数は無視されます。
UInt128 と UInt256 では、戻り値 1 は確率的なものです。省略可能な rounds 引数で、
何回 Miller-Rabin のラウンドを実行するかを指定します。
ラウンド数を増やすほど偽陽性の確率は下がりますが、その分実行時間は長くなります。一様ランダムな
witness を用いる場合、固定された合成数に対する偽陽性率は 4^(-rounds) 以下に抑えられます。デフォルトの 25
ではこの上限は 10^-15 未満、最大値の 256 では 10^-154 未満になります。
この関数は決定論的です。witness は n を seed にして生成されるため、同じ (n, rounds) の組み合わせでは常に
同じ結果になります。4^(-rounds) という上限は、一様ランダムな witness を使う場合の入力ごとの確率を表します。
一方、この関数の決定論的な seed 方式では、これは入力全体に対する割合を表します。つまり、その
witness の数列にだまされる合成数は、常に 1 を返します。
構文
isProbablePrime(n[, rounds])引数
n— 素数かどうかを判定する符号なし整数。UInt8またはUInt16またはUInt32またはUInt64またはUInt128またはUInt256rounds—[1, 256]の範囲の省略可能な正の整数定数。UInt128/UInt256に対する Miller-Rabin のラウンド数です (より小さい型では無視されます) 。デフォルトは25です。UInt8またはUInt16またはUInt32またはUInt64
戻り値
n がおそらく素数なら 1、確実に合成数なら 0 を返します。UInt8
例
小さい素数
SELECT isProbablePrime(17)1小さな合成数
SELECT isProbablePrime(18)0最大の UInt64 の素数 (正確な結果)
SELECT isProbablePrime(18446744073709551557)1メルセンヌ素数 M_127 (UInt128)
SELECT isProbablePrime(toUInt128('170141183460469231731687303715884105727'))1Curve25519 の基礎体の素数 2^255 - 19 (UInt256)
SELECT isProbablePrime(toUInt256('57896044618658097711785492504343953926634992332820282019728792003956564819949'))1より高速で、信頼性は低めの判定: 5ラウンド
SELECT isProbablePrime(toUInt256('57896044618658097711785492504343953926634992332820282019728792003956564819949'), 5)1lgamma
導入バージョン: v1.1.0
ガンマ関数の対数を返します。
構文
lgamma(x)引数
戻り値
x のガンマ関数の対数を返します。Float*
例
使用例
SELECT lgamma(5);3.1780538303479458log
導入バージョン: v1.1.0
引数の自然対数を返します。
構文
log(x)別名: ln
引数
戻り値
x の自然対数を返します。Float*
例
使用例
SELECT log(10);2.3025850938475476log10
導入バージョン: v1.1.0
引数の常用対数を返します。
構文
log10(x)引数
戻り値
x の常用対数を返します。Float*
例
使用例
SELECT log10(100);2log1p
導入バージョン: v20.12.0
log(1+x) を計算します。
x の値が小さい場合、log1p(x) の計算は log(1+x) より高精度です。
構文
log1p(x)引数
戻り値
範囲 -∞ < log1p(x) < +∞ の値を返します。Float64
例
使用例
SELECT log1p(0)0log2
導入バージョン: v1.1.0
引数の二進対数を返します。
構文
log2(x)引数
戻り値
x の 2 を底とする対数を返します。Float*
例
使用例
SELECT log2(8);3pi
導入バージョン: v1.1.0
pi (π) を返します。
構文
pi()引数
- ありません。
戻り値
pi Float64 を返します
例
使用例
SELECT pi();3.141592653589793pow
導入バージョン: v1.1.0
x の y 乗を返します。
構文
pow(x, y)別名: power
引数
x— 底数。(U)Int8/16/32/64またはFloat*またはBFloat16またはDecimal*y— 指数。(U)Int8/16/32/64またはFloat*またはBFloat16またはDecimal*
戻り値
x^y を返します。Float64
例
使用例
SELECT pow(2, 3);8proportionsZTest
導入バージョン: v22.3.0
2標本比率の Z 検定 (2つの母集団 x と y の比率を比較するための統計的検定) の検定統計量を返します。 この関数は、標準誤差について、プール推定法と非プール推定法の両方をサポートしています。 プール法では、2つの比率を平均し、標準誤差の推定にはその単一の比率を使用します。 非プール法では、2つの比率をそれぞれ個別に使用します。
構文
proportionsZTest(successes_x, successes_y, trials_x, trials_y, conf_level, pool_type)引数
successes_x— 母集団 x における成功数。UInt64successes_y— 母集団 y における成功数。UInt64trials_x— 母集団 x における試行回数。UInt64trials_y— 母集団 y における試行回数。UInt64conf_level— 検定の信頼水準。Float64pool_type— 標準誤差の推定に使用するプーリング方式の選択。'unpooled' または 'pooled' のいずれかです。String
戻り値
z_stat (Z統計量) 、p_val (P値) 、ci_low (信頼区間の下限) 、ci_high (信頼区間の上限) を含むタプルを返します。Tuple(Float64, Float64, Float64, Float64)
例
使用例
SELECT proportionsZTest(10, 11, 100, 101, 0.95, 'unpooled');┌─proportionsZTest(10, 11, 100, 101, 0.95, 'unpooled')───────────────────────────────┐
│ (-0.20656724435948853,0.8363478437079654,-0.09345975390115283,0.07563797172293502) │
└────────────────────────────────────────────────────────────────────────────────────┘radians
導入バージョン: v22.2.0
度をラジアンに変換します。
構文
radians(x)引数
戻り値
ラジアン単位の値 Float64 を返します
例
使用例
SELECT radians(180)3.141592653589793sigmoid
導入バージョン: v20.1.0
シグモイド関数 1 / (1 + exp(-x)) を計算します。シグモイド関数は任意の実数を (0, 1) の範囲に写し、機械学習で広く使用されます。
構文
sigmoid(x)引数
戻り値
入力値のシグモイド値を返します。範囲は (0, 1) です。Float64
例
基本的な使い方
SELECT sigmoid(0)0.5sign
導入バージョン: v21.2.0
実数の符号を返します。
構文
sign(x)引数
戻り値
x < 0 の場合は -1、x = 0 の場合は 0、x > 0 の場合は 1 を返します。Int8
例
0 の符号
SELECT sign(0)0正符号
SELECT sign(1)1負号
SELECT sign(-1)-1sin
導入バージョン: v1.1.0
引数の正弦を返します。
構文
sin(x)引数
戻り値
x の正弦を返します。
例
基本
SELECT sin(1.23)0.9424888019316975sinh
導入バージョン: v20.12.0
双曲線正弦を返します。
構文
sinh(x)引数
戻り値
-∞ < sinh(x) < +∞ の範囲の値を返します。Float64
例
使用例
SELECT sinh(0)0sqrt
導入バージョン: v1.1.0
引数の平方根を返します。
構文
sqrt(x)引数
戻り値
x の平方根を返します Float*
例
使用例
SELECT sqrt(16);4tan
導入バージョン: v1.1.0
引数の正接を返します。
構文
tan(x)引数
戻り値
x の正接を返します。Float*
例
使用例
SELECT tan(0);0tanh
導入バージョン: v20.1.0
双曲線正接を返します。
構文
tanh(x)引数
戻り値
-1 < tanh(x) < 1 の範囲の値を返します。Float*
例
使用例
SELECT tanh(0)0tgamma
導入バージョン: v1.1.0
ガンマ関数を返します。
構文
tgamma(x)引数
戻り値
ガンマ関数の値を返します。Float*
使用例
使用例
SELECT tgamma(5);24widthBucket
導入バージョン: v23.3.0
範囲 low から high を count 個の等幅のバケットに分割したヒストグラムにおいて、パラメーター operand が属するバケット番号を返します。operand が low より小さい場合は 0 を返し、operand が high 以上の場合は count+1 を返します。
また、他のデータベースとの互換性のために、WIDTH_BUCKET という大文字と小文字を区別しない alias も用意されています。
構文
widthBucket(operand, low, high, count)別名: width_bucket
引数
operand— バケットを判定する対象の値です。(U)Int8/16/32/64low— ヒストグラム範囲の下限です。(U)Int8/16/32/64high— ヒストグラム範囲の上限です。(U)Int8/16/32/64count— 等幅バケットの数です。0 は指定できません。UInt8/16/32/64
戻り値
バケット番号を整数で返します。operand < low の場合は 0 を返し、operand >= high の場合は count+1 を返します。UInt8/16/32/64
例
使用例
SELECT widthBucket(10.15, -8.6, 23, 18)11