Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Đánh giá đa thức tại các điểm x trong Python


Để đánh giá một đa thức tại các điểm x, hãy sử dụng phương thức polynomial.polyval() trong Python Numpy. Tham số thứ nhất x: nếu x là danh sách hoặc tuple, nó được chuyển đổi thành ndarray, ngược lại nó được giữ nguyên và được coi là một scalar. Trong cả hai trường hợp, x hoặc các phần tử của nó phải hỗ trợ phép cộng và nhân với chính nó và với các phần tử của c.

Tham số thứ hai C: mảng các hệ số được sắp xếp sao cho các hệ số cho các hạng tử bậc n được chứa trong c[n]. Nếu c là đa chiều, các chỉ mục còn lại liệt kê nhiều đa thức. Trong trường hợp hai chiều, các hệ số có thể được coi là lưu trữ trong các cột của c.

Tham số thứ ba tensor: nếu True, hình dạng của mảng hệ số được mở rộng bằng các 1 ở bên phải, một cho mỗi chiều của x. Scalar có chiều 0 cho hành động này. Kết quả là mọi cột hệ số trong c được đánh giá cho mọi phần tử của x. Nếu False, x được broadcast qua các cột của c để đánh giá. Từ khóa này hữu ích khi c là đa chiều. Giá trị mặc định là True.

Các bước thực hiện

Trước tiên, nhập các thư viện cần thiết:

import numpy as np
from numpy.polynomial.polynomial import polyval

Tạo mảng các hệ số:

c = np.array([1, 2, 3])

Hiển thị mảng:

print("Mảng của chúng ta...\n", c)

Kiểm tra số chiều:

print("\nSố chiều của mảng...\n", c.ndim)

Lấy kiểu dữ liệu:

print("\nKiểu dữ liệu của đối tượng mảng...\n", c.dtype)

Lấy hình dạng:

print("\nHình dạng của đối tượng mảng...\n", c.shape)

Để đánh giá đa thức tại các điểm x, sử dụng phương thức polynomial.polyval():

print("\nKết quả...\n", polyval(1, c))

Ví dụ hoàn chỉnh

import numpy as np
from numpy.polynomial.polynomial import polyval

# Tạo mảng các hệ số
c = np.array([1, 2, 3])

# Hiển thị mảng
print("Mảng của chúng ta...\n", c)

# Kiểm tra số chiều
print("\nSố chiều của mảng...\n", c.ndim)

# Lấy kiểu dữ liệu
print("\nKiểu dữ liệu của đối tượng mảng...\n", c.dtype)

# Lấy hình dạng
print("\nHình dạng của đối tượng mảng...\n", c.shape)

# Đánh giá đa thức tại các điểm x
print("\nKết quả...\n", polyval(1, c))

Đầu ra

Mảng của chúng ta...
 [1 2 3]
Số chiều của mảng...
 1
Kiểu dữ liệu của đối tượng mảng...
 int64
Hình dạng của đối tượng mảng...
 (3,)
Kết quả...
 6.0