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

SciPy สามารถใช้คำนวณค่าผกผันของเมทริกซ์ใน Python ได้อย่างไร


บางครั้ง อาจจำเป็นต้องคำนวณค่าผกผันของเมทริกซ์ทางคณิตศาสตร์ และใช้ผลลัพธ์ของการดำเนินการเพื่อวัตถุประสงค์อื่น ด้านล่างนี้คือขั้นตอนในการค้นหาอินเวอร์สของเมทริกซ์ด้วยตนเอง

คำนวณมูลค่าของ 'ผู้เยาว์'

ในการคำนวณนี้ ค่าของแถวและคอลัมน์ปัจจุบันจะถูกละเว้น และจะหาค่าดีเทอร์มิแนนต์ของค่าที่เหลือ ผู้เยาว์ที่คำนวณได้จะถูกเก็บไว้ในเมทริกซ์

ขั้นตอนต่อไปคือการหาปัจจัยร่วม โดยที่เครื่องหมายทางเลือกของค่าในเมทริกซ์ 'ผู้เยาว์' จะเปลี่ยนจาก '+' เป็น '-' และในทางกลับกัน

ถัดไป เมทริกซ์จะถูกย้าย นั่นคือ แถวจะถูกแปลงเป็นคอลัมน์ และคอลัมน์จะถูกแปลงเป็นแถว

พบดีเทอร์มีแนนต์ของเมทริกซ์ดั้งเดิม และองค์ประกอบทั้งหมดในเมทริกซ์ที่คำนวณก่อนหน้านี้หารด้วยดีเทอร์มีแนนต์ เมทริกซ์ที่ได้จะเป็นค่าผกผันของเมทริกซ์เดิม

การหาค่าผกผันของเมทริกซ์ด้วยตนเองโดยใช้การคำนวณเป็นกระบวนการที่ใช้เวลานาน นี่คือจุดเริ่มต้นของฟังก์ชัน 'inv' ที่มีอยู่ในไลบรารี 'SciPy'

ไวยากรณ์ของฟังก์ชัน 'inv'

scipy.linalg.inv(matrix)

"เมทริกซ์" คือพารามิเตอร์ที่ส่งผ่านไปยังฟังก์ชัน "inv" เพื่อค้นหาค่าผกผัน

ตัวอย่าง

from scipy import linalg
import numpy as np
two_d_matrix = np.array([ [7, 9], [33, 8] ])
print("The inverse of the matrix is :")
print(linalg.inv(two_d_matrix ))

ผลลัพธ์

The inverse of the matrix is :
[[-0.03319502 0.0373444 ]
[ 0.13692946 -0.02904564]]

คำอธิบาย

  • นำเข้าไลบรารีที่จำเป็น
  • เมทริกซ์ถูกกำหนดด้วยค่าบางอย่างในนั้น
  • พารามิเตอร์จะถูกส่งไปยังฟังก์ชัน 'inv' ที่คำนวณค่าผกผันของเมทริกซ์
  • เรียกฟังก์ชัน
  • ผลลัพธ์นี้จะแสดงบนคอนโซล