Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

คำนวณลอการิทึมธรรมชาติด้วย scimath ใน Python

หากต้องการคำนวณลอการิทึมธรรมชาติ (natural logarithm) โดยใช้โมดูล scimath ใน NumPy ให้ใช้เมธอด np.emath.log() เมธอดนี้จะคืนค่า log ของค่า x ที่ระบุ หาก x เป็นสเกลาร์ (ค่าเดียว) ผลลัพธ์จะเป็นสเกลาร์เช่นกัน มิฉะนั้นจะคืนค่าเป็นอาร์เรย์

พารามิเตอร์หลัก

  • x: ค่า หรืออาร์เรย์ของค่าที่ต้องการหาลอการิทึมธรรมชาติ

ขั้นตอนการใช้งาน

1. นำเข้าไลบรารีที่จำเป็น

import numpy as np

2. สร้างอาร์เรย์ NumPy ด้วยเมธอด array()

arr = np.array([np.inf, -np.inf, np.exp(1), -np.exp(1)])

3. แสดงอาร์เรย์

print("Our Array...\n", arr)

4. ตรวจสอบมิติ (Dimensions)

print("\nDimensions of our Array...\n", arr.ndim)

5. ตรวจสอบชนิดข้อมูล (Datatype)

print("\nDatatype of our Array object...\n", arr.dtype)

6. ตรวจสอบรูปร่าง (Shape)

print("\nShape of our Array object...\n", arr.shape)

7. คำนวณลอการิทึมธรรมชาติด้วย np.emath.log()

print("\nResult (log)...\n", np.emath.log(arr))

ตัวอย่างโค้ดเต็ม

import numpy as np

# สร้างอาร์เรย์ NumPy
arr = np.array([np.inf, -np.inf, np.exp(1), -np.exp(1)])

# แสดงอาร์เรย์
print("Our Array...\n", arr)

# ตรวจสอบมิติ
print("\nDimensions of our Array...\n", arr.ndim)

# ตรวจสอบชนิดข้อมูล
print("\nDatatype of our Array object...\n", arr.dtype)

# ตรวจสอบรูปร่าง
print("\nShape of our Array object...\n", arr.shape)

# คำนวณลอการิทึมธรรมชาติ
print("\nResult (log)...\n", np.emath.log(arr))

ผลลัพธ์ที่ได้

Our Array...
 [ inf -inf  2.71828183 -2.71828183]
Dimensions of our Array...
 1
Datatype of our Array object...
 float64
Shape of our Array object...
 (4,)
Result (log)...
 [inf+0.j         inf+3.14159265j  1.+0.j         1.+3.14159265j]

คำอธิบายเพิ่มเติม

ฟังก์ชัน np.emath.log() เป็นส่วนหนึ่งของโมดูล numpy.emath (ซึ่งสามารถเข้าถึงได้ผ่าน np.emath) ที่ออกแบบมาเพื่อจัดการกับค่าทางคณิตศาสตร์ที่อาจให้ผลลัพธ์เป็นจำนวนเชิงซ้อน (complex numbers) เช่น ลอการิทึมของค่าติดลบ หรือค่าอนันต์

ในตัวอย่างข้างต้น:

  • log(inf) = inf + 0j
  • log(-inf) = inf + πj (เนื่องจากลอการิทึมของค่าติดลบให้ส่วนจินตภาพเป็น π)
  • log(e) = 1 + 0j
  • log(-e) = 1 + πj

สิ่งนี้มีประโยชน์มากเมื่อทำงานกับสัญญาณ การประมวลผลภาพ หรือการคำนวณทางวิทยาศาสตร์ที่อาจพบค่าติดลบหรือค่าอนันต์

คำนวณลอการิทึมธรรมชาติด้วย scimath ใน Python

เรียนรู้วิธีใช้ np.emath.log() คำนวณลอการิทึมธรรมชาติ รองรับค่าอนันต์และค่าติดลบ ได้ผลลัพธ์เป็นจำนวนเชิงซ้อน