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

ส่งกลับอันดับของเมทริกซ์ขาดอันดับโดยใช้วิธีการแยกค่าเอกพจน์ใน Python


ในการส่งคืนลำดับเมทริกซ์ของอาร์เรย์โดยใช้วิธีการแยกค่าเอกพจน์ ให้ใช้วิธี numpy.linalg.matrix_rank() ใน Python อันดับของอาร์เรย์คือจำนวนค่าเอกพจน์ของอาร์เรย์ที่มากกว่าค่า tol พารามิเตอร์ที่ 1 A คือเวกเตอร์อินพุตหรือสแต็กของเมทริกซ์

พารามิเตอร์ตัวที่ 2 tol คือเกณฑ์ด้านล่าง ซึ่งค่า SVD ถือเป็นศูนย์ ถ้า tol ​​เป็น None และ S เป็นอาร์เรย์ที่มีค่าเอกพจน์สำหรับ M และ eps คือค่า epsilon สำหรับประเภทข้อมูลของ S ดังนั้น tol จะถูกตั้งค่าเป็น S.max() * max(M, N) * eps พารามิเตอร์ที่ 3 คือ Hermitian ถ้า True จะถือว่า A เป็น Hermitian ซึ่งช่วยให้สามารถค้นหาค่าเอกพจน์ได้อย่างมีประสิทธิภาพมากขึ้น ค่าเริ่มต้นเป็นเท็จ

ขั้นตอน

ขั้นแรก นำเข้าไลบรารีที่จำเป็น-

import numpy as np
from numpy.linalg import matrix_rank

สร้างอาร์เรย์ -

arr = np.eye(5)

แสดงอาร์เรย์ -

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)

ในการส่งคืนอันดับเมทริกซ์ของอาร์เรย์โดยใช้วิธีการแยกค่าเอกพจน์ ให้ใช้วิธี numpy.linalg.matrix_rank() -

print("\nRank...\n",matrix_rank(arr))
arr[-1,-1] = 0.
print("\nUpdated Rank (Rank-Deficit Matrix)...\n",matrix_rank(arr))

ตัวอย่าง

import numpy as np
from numpy.linalg import matrix_rank

# Create an array
arr = np.eye(5)

# Display the array
print("Our Array...\n",arr)

# Check the Dimensions
print("\nDimensions of our Array...\n",arr.ndim)

# Get the Datatype
print("\nDatatype of our Array object...\n",arr.dtype)

# Get the Shape
print("\nShape of our Array object...\n",arr.shape)

# To Return matrix rank of array using Singular Value Decomposition method, use the numpy.linalg.matrix_rank() method in Python
print("\nRank...\n",matrix_rank(arr))
arr[-1,-1] = 0.
print("\nUpdated Rank (Rank-Deficit Matrix)...\n",matrix_rank(arr))

ผลลัพธ์

Our Array...
[[1. 0. 0. 0. 0.]
[0. 1. 0. 0. 0.]
[0. 0. 1. 0. 0.]
[0. 0. 0. 1. 0.]
[0. 0. 0. 0. 1.]]

Dimensions of our Array...
2

Datatype of our Array object...
float64

Shape of our Array object...
(5, 5)

Rank...
5

Updated Rank (Rank-Deficit Matrix)...
4