เมื่อใช้ 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)
คือการเข้าสู่ระบบธรรมชาติ (ฐานe
log) 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)