Polynomials(多项式)在numpy中的用法

在HakerRank上做题,发现对多项式的讲解比较清晰,查找了下网上中文说的不是特别清楚,因此浅记录下。

一、poly

The poly tool returns the coefficients of a polynomial with the given sequence of roots.

poly可以在已知多项式根的情况下返回多项式系数

print numpy.poly([-1, 1, 1, 10])        #Output : [  1 -11   9  11 -10]

上图多项式已知根-1,1,1,10,则多项式为x^{4}-11x^{3}+9x^{2}+11x^{11}-10

 

二、roots

The roots tool returns the roots of a polynomial with the given coefficients.

roots可以在已知多项式系数的情况下求根(与poly相反)

print numpy.roots([1, 0, -1])           #Output : [-1.  1.]

三、polyint

The polyint tool returns an antiderivative (indefinite integral) of a polynomial.

polyint可以返回已知系数多项式的原多项式(原多项式求导之后就是该已知系数多项式)

print numpy.polyint([1, 1, 1])          #Output : [ 0.33333333  0.5         1.          0.        ]

已知y=x^{2}+x+1则他的原函数为Y=0.333x^{3}+0.5x^{2}+x+1

四、polyder

The polyder tool returns the derivative of the specified order of a polynomial.

polyder可以返回多项式求导后的结果(与polyint相反)

print numpy.polyder([1, 1, 1, 1])       #Output : [3 2 1]

五、polyval

The polyval tool evaluates the polynomial at specific value.

polyval可以求得多项式在特定点的值

print numpy.polyval([1, -2, 0, 2], 4)   #Output : 34

已知多项式x^{3}-2x^{2}+2,该多项式在x = 4的值为34

六、polyfit

The polyfit tool fits a polynomial of a specified order to a set of data using a least-squares approach.

polyfit返回多项式拟合(应该是最小二乘法)的结果

print numpy.polyfit([0,1,-1, 2, -2], [0,1,1, 4, 4], 2)
#Output : [  1.00000000e+00   0.00000000e+00  -3.97205465e-16]

上图已知采样点为(0,0)、(1,1)、(-1,1)、(2,4)、(-2,4),x项系数为2

拟合后得到多项式y = x^{2}

你可能感兴趣的:(python)