เมื่อใช้ numpy ฉันจะทำสิ่งต่อไปนี้ได้อย่างไร:
ln(x)
เทียบเท่ากับ:
np.log(x)
ฉันขอโทษสำหรับคำถามที่ดูเหมือนจะไม่สำคัญ แต่ความเข้าใจของฉันเกี่ยวกับความแตกต่างระหว่างlogและlnนั่นlnคือ logspace e?
เมื่อใช้ 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)คือการเข้าสู่ระบบธรรมชาติ (ฐานelog) 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คือ log-base-100 ของ x
ฉันมักจะทำเช่นนี้:
from numpy import log as ln
บางทีสิ่งนี้อาจทำให้คุณสบายใจขึ้น
คุณสามารถทำได้ง่ายๆเพียงแค่ทำสิ่งที่ตรงกันข้ามโดยสร้างฐานของบันทึกเป็น e
import math
e = 2.718281
math.log(e, 10) = 2.302585093
ln(10) = 2.30258093
from numpy.lib.scimath import logn
from math import e
#using: x - var
logn(e, x)