On this page
numpy.polyval
- numpy.polyval(p, x)[source]
-
Evaluate a polynomial at specific values.
Note
This forms part of the old polynomial API. Since version 1.4, the new polynomial API defined in
numpy.polynomialis preferred. A summary of the differences can be found in the transition guide.If
pis of length N, this function returns the value:p[0]*x**(N-1) + p[1]*x**(N-2) + ... + p[N-2]*x + p[N-1]If
xis a sequence, thenp(x)is returned for each element ofx. Ifxis another polynomial then the composite polynomialp(x(t))is returned.- Parameters
-
- parray_like or poly1d object
-
1D array of polynomial coefficients (including coefficients equal to zero) from highest degree to the constant term, or an instance of poly1d.
- xarray_like or poly1d object
-
A number, an array of numbers, or an instance of poly1d, at which to evaluate
p.
- Returns
-
- valuesndarray or poly1d
-
If
xis a poly1d instance, the result is the composition of the two polynomials, i.e.,xis “substituted” inpand the simplified result is returned. In addition, the type ofx- array_like or poly1d - governs the type of the output:xarray_like =>valuesarray_like,xa poly1d object =>valuesis also.
See also
-
poly1d -
A polynomial class.
Notes
Horner’s scheme [1] is used to evaluate the polynomial. Even so, for polynomials of high degree the values may be inaccurate due to rounding errors. Use carefully.
If
xis a subtype ofndarraythe return value will be of the same type.References
- 1
-
I. N. Bronshtein, K. A. Semendyayev, and K. A. Hirsch (Eng. trans. Ed.), Handbook of Mathematics, New York, Van Nostrand Reinhold Co., 1985, pg. 720.
Examples
>>> np.polyval([3,0,1], 5) # 3 * 5**2 + 0 * 5**1 + 1 76 >>> np.polyval([3,0,1], np.poly1d(5)) poly1d([76]) >>> np.polyval(np.poly1d([3,0,1]), 5) 76 >>> np.polyval(np.poly1d([3,0,1]), np.poly1d(5)) poly1d([76])
© 2005–2022 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.23/reference/generated/numpy.polyval.html