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

การสร้างเมทริกซ์วันเดอร์มอนด์แบบปลอมของชนิดที่กำหนดใน Python

เพื่อสร้างเมทริกซ์วันเดอร์มอนด์แบบปลอม (Pseudo-Vandermonde matrix) ของชนิดที่กำหนด ให้ใช้ polynomial.polyvander2d() ใน NumPy เมธอดนี้คืนค่าเมทริกซ์วันเดอร์มอนด์แบบปลอมของชนิด deg และจุดตัวอย่าง (x, y)

พารามิเตอร์

  • x, y: อาร์เรย์พิกัดจุด รูปทรงต้องเหมือนกัน ชนิดข้อมูลแปลงเป็น float64 หรือ complex128 สเกลาร์แปลงเป็นอาร์เรย์ 1 มิติ
  • deg: ลิสต์ชนิดสูงสุด รูปแบบ [x_deg, y_deg]

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

import numpy as np
from numpy.polynomial.polynomial import polyvander2d

# สร้างอาร์เรย์พิกัด
x = np.array([1, 2])
y = np.array([3, 4])

# แสดงข้อมูล
print("อาร์เรย์ 1...\n", x)
print("\nอาร์เรย์ 2...\n", y)
print("\nชนิดข้อมูลอาร์เรย์ 1...\n", x.dtype)
print("\nชนิดข้อมูลอาร์เรย์ 2...\n", y.dtype)
print("\nมิติของอาร์เรย์ 1...\n", x.ndim)
print("\nมิติของอาร์เรย์ 2...\n", y.ndim)
print("\nรูปทรงของอาร์เรย์ 1...\n", x.shape)
print("\nรูปทรงของอาร์เรย์ 2...\n", y.shape)

# สร้างเมทริกซ์วันเดอร์มอนด์แบบปลอม
x_deg, y_deg = 2, 3
print("\nผลลัพธ์...\n", polyvander2d(x, y, [x_deg, y_deg]))

โค้ดเต็มและผลลัพธ์

import numpy as np
from numpy.polynomial.polynomial import polyvander2d

x = np.array([1, 2])
y = np.array([3, 4])
print("อาร์เรย์ 1...\n", x)
print("\nอาร์เรย์ 2...\n", y)
print("\nชนิดข้อมูลอาร์เรย์ 1...\n", x.dtype)
print("\nชนิดข้อมูลอาร์เรย์ 2...\n", y.dtype)
print("\nมิติของอาร์เรย์ 1...\n", x.ndim)
print("\nมิติของอาร์เรย์ 2...\n", y.ndim)
print("\nรูปทรงของอาร์เรย์ 1...\n", x.shape)
print("\nรูปทรงของอาร์เรย์ 2...\n", y.shape)

x_deg, y_deg = 2, 3
print("\nผลลัพธ์...\n", polyvander2d(x, y, [x_deg, y_deg]))
อาร์เรย์ 1...
 [1 2]
อาร์เรย์ 2...
 [3 4]
ชนิดข้อมูลอาร์เรย์ 1...
 int64
ชนิดข้อมูลอาร์เรย์ 2...
 int64
มิติของอาร์เรย์ 1...
 1
มิติของอาร์เรย์ 2...
 1
รูปทรงของอาร์เรย์ 1...
 (2,)
รูปทรงของอาร์เรย์ 2...
 (2,)
ผลลัพธ์...
 [[ 1.  3.  9. 27.  1.  3.  9. 27.  1.  3.  9. 27.]
 [ 1.  4. 16. 64.  2.  8. 32. 128.  4. 16. 64. 256.]]