Como você faz logs naturais (por exemplo, “ln ()”) com numpy em Python?

98

Usando o numpy, como posso fazer o seguinte:

ln(x)

É equivalente a:

np.log(x)

Peço desculpas por uma pergunta aparentemente trivial, mas meu entendimento da diferença entre loge lnisso lné logspace e?

user1220022
fonte

Respostas:

18

Correto, np.log(x)é o Log Natural ( elog de base ) de x.

Para outras bases, lembre-se desta lei dos logs: log-b(x) = log-k(x) / log-k(b)onde log-bestá o log em alguma base arbitrária b, e log-ké o log na base k, por exemplo

aqui k = e

l = np.log(x) / np.log(100)

e lé o log-base-100 de x

Kaveman
fonte
e quanto à perda de precisão?
qwr
8

Eu normalmente faço assim:

from numpy import log as ln

Talvez isso possa deixá-lo mais confortável.

Vincent
fonte
0

Você poderia simplesmente fazer o inverso, tornando a base do log em e.

import math

e = 2.718281

math.log(e, 10) = 2.302585093
ln(10) = 2.30258093
Raviole
fonte
-2
from numpy.lib.scimath import logn
from math import e

#using: x - var
logn(e, x)
fora do tempo
fonte