如何在X处评估多项式和系数的形状 NumPy数组为每个维度进行扩展

  • Post category:Python

要在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,我们通过在输入数组中添加维度来扩展多项式函数的维度。