要在 NumPy 数组中评估多项式,可以使用 numpy.polyval
函数。该函数接受两个参数:多项式数组和需要为其计算多项式值的自变量数组。
以下是步骤:
1.准备多项式系数数组,一般来说是按照从高阶到低阶的顺序排列,例如:[3, 0, 1, 5] 表示 $3x^3 + x^2 + 5$。
2.准备自变量数组,可以是任何形状的 NumPy 数组,可以进行扩展操作。
3.使用 numpy.polyval
函数计算多项式值。该函数返回一个数组,其中每个元素都是在给定自变量时多项式的值。
以下是两个示例说明:
import numpy as np
# 示例1:对于一维数组的多项式计算
coeffs = [1, 2, 1] # 表示 x^2 + 2x + 1
x = np.array([1, 2, 3]) # 自变量
y = np.polyval(coeffs, x) # 计算多项式值
print(y)
# 输出:[ 4 9 16]
# 示例2:对于二维数组的多项式计算,在每个维度上进行扩展
coeffs_2d = np.array([[1, 0, 0], [0, 2, 0], [0, 0, 3]]) # 表示三个二次多项式,x^2, 2x^2, 3x^2
x_2d = np.array([[1, 2], [3, 4], [5, 6]]) # 自变量,两个维度均为3
y_2d = np.polyval(coeffs_2d, x_2d) # 计算多项式值
print(y_2d)
# 输出:
# [[ 1 4]
# [ 9 16]
# [25 36]]
以上就是使用 numpy.polyval
函数评估多项式和系数的形状的完整攻略,可以根据需要进行自变量数组的维度扩展操作。