如何在 Redshift 中计算以 2 为底的对数

Posted

技术标签:

【中文标题】如何在 Redshift 中计算以 2 为底的对数【英文标题】:How to calculate base 2 logarithm of a number in Redshift 【发布时间】:2018-05-23 21:30:20 【问题描述】:

手册中有log10和ln函数,但是找不到log2的计算方法了..

https://docs.aws.amazon.com/redshift/latest/dg/Math_functions.html

【问题讨论】:

【参考方案1】:

任何基数的对数都可以通过除法计算。对于这种特殊情况:

select ln(x) / ln(2)

【讨论】:

【参考方案2】:

每节高中数学课:

log2(n) ::= log10(n) / log10(2)

任何基地都可以。您也可以使用 base e 来做到这一点,如下所示:

log2(n) ::= ln(n) / ln(2)

【讨论】:

以上是关于如何在 Redshift 中计算以 2 为底的对数的主要内容,如果未能解决你的问题,请参考以下文章

NumPy:以 n 为底的对数

log对数运算符号是啥意思?

机器学习理论换底公式--以e,2,10为底的对数关系转化

理解对数——金融问题中的自然对数(以e为底的对数)

解释一下数学的log(对数)

javaScript算数对象