![](/img/trans.png)
[英]How do you get a list of pydoc accessible paths for a python package, e.g. numpy or tensorflow?
[英]How do you do natural logs (e.g. “ln()”) with numpy in Python?
使用 numpy,我該如何執行以下操作:
ln(x)
是否等同於:
np.log(x)
對於這樣一個看似微不足道的問題,我深表歉意,但我對log
和ln
之間區別的理解是ln
是 logspace e?
np.log
是ln
,而np.log10
是您的標准基數為 10 的日志。
相關文檔:
http://docs.scipy.org/doc/numpy/reference/generated/numpy.log.html
http://docs.scipy.org/doc/numpy/reference/generated/numpy.log10.html
正確, np.log(x)
是自然對數(基數e
的日志) x
。
對於其他基數,請記住這個對數定律: log-b(x) = log-k(x) / log-k(b)
其中log-b
是某個任意基數b
, log-k
是對數在基數k
,例如
這里 k = e
l = np.log(x) / np.log(100)
l
是 x 的對數基 100
我通常這樣做:
from numpy import log as ln
也許這會讓你更舒服。
Numpy 似乎從 MATLAB/Octave 中得到提示,並使用log
作為“log base e”或ln
。 也像 MATLAB/Octave 一樣,Numpy 不提供任意基數的對數函數。
如果您發現log
令人困惑,您可以創建自己的對象ln
來引用 numpy.log 函數:
>>> import numpy as np
>>> from math import e
>>> ln = np.log # assign the numpy log function to a new function called ln
>>> ln(e)
1.0
from numpy.lib.scimath import logn
from math import e
#using: x - var
logn(e, x)
您可以通過將 log 的基礎設置為 e 來簡單地做相反的事情。
import math
e = 2.718281
math.log(e, 10) = 2.302585093
ln(10) = 2.30258093
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.