要在NumPy中评估多项式和系数的形状,我们需要使用polyval函数,该函数可以将多项式用给定的系数进行求解。
代码格式:
numpy.polyval(p, x)
其中,p表示一个一维数组,包含多项式的系数,x表示要在其上计算多项式的值的一维数组
我们可以使用NumPy的reshape函数将输入数组x从一维转换为多维数组,使得我们可以对多项式进行二维或以上维度上的计算。
示例1:
import numpy as np
poly = np.array([1,2,3])
x = np.array([[1, 2],[3, 4]])
result = np.polyval(poly, x)
print(result)
输出结果为:
[[ 6 11]
[18 27]]
在上面的示例中,我们传入一个多项式系数数组poly,和一个二维数组x。使用np.polyval函数计算每个维度中的多项式值,其中第一个维度的多项式取值为x[0, 0]和x[0, 1], 第二个维度的多项式取值为x[1, 0]和x[1, 1]。
示例2:
import numpy as np
poly = np.array([1, 2, 3, 4])
x = np.array([1, 2, 3, 4, 5])
x = np.reshape(x, (5, 1))
result = np.polyval(poly, x)
print(result)
输出结果为:
[[10]
[26]
[58]
[106]
[182]]
在上面的示例中,我们传入一个多项式系数数组poly,和一个一维数组x。使用np.reshape函数将输入数组x从一维转换为二维数组,并使用np.polyval函数计算多项式值。在这个示例中,多项式函数为1+2x+3x^2+4x^3,我们通过在输入数组中添加维度来扩展多项式函数的维度。