Skip to content
Related Articles

Related Articles

Improve Article

numpy.poly1d() in Python

  • Last Updated : 04 Dec, 2020
Geek Week

The numpy.poly1d() function helps to define a polynomial function. It makes it easy to apply “natural operations” on polynomials.

Syntax: numpy.poly1d(arr, root, var)
Parameters :
arr : [array_like] The polynomial coefficients are given in decreasing order of powers. If the second parameter (root) is set to True then array values are the roots of the polynomial equation.

root : [bool, optional] True means polynomial roots. Default is False.
var : variable like x, y, z that we need in polynomial [default is x].

Arguments :
c : Polynomial coefficient.
coef : Polynomial coefficient.
coefficients : Polynomial coefficient.
order : Order or degree of polynomial.
o : Order or degree of polynomial.
r : Polynomial root.
roots : Polynomial root.

Return: Polynomial and the operation applied



For example: poly1d(3, 2, 6) = 3x2 + 2x + 6
poly1d([1, 2, 3], True) = (x-1)(x-2)(x-3) = x3 – 6x2 + 11x -6

Code 1 : Explaining poly1d() and its argument




# Python code explaining
# numpy.poly1d()
  
# importing libraries
import numpy as np
  
# Constructing polynomial
p1 = np.poly1d([1, 2])
p2 = np.poly1d([4, 9, 5, 4])
  
print ("P1 : ", p1)
print ("\n p2 : \n", p2)
  
# Solve for x = 2
print ("\n\np1 at x = 2 : ", p1(2))
print ("p2 at x = 2 : ", p2(2))
  
# Finding Roots
print ("\n\nRoots of P1 : ", p1.r)
print ("Roots of P2 : ", p2.r)
  
# Finding Coefficients
print ("\n\nCoefficients of P1 : ", p1.c)
print ("Coefficients of P2 : ", p2.coeffs)
  
# Finding Order
print ("\n\nOrder / Degree of P1 : ", p1.o)
print ("Order / Degree of P2 : ", p2.order)

Output :

P1 :   
1 x + 2

 p2 : 
    3     2
4 x + 9 x + 5 x + 4


p1 at x = 2 :  4
p2 at x = 2 :  82


Roots of P1 :  [-2.]
Roots of P2 :  [-1.86738371+0.j         -0.19130814+0.70633545j -0.19130814-0.70633545j]


Coefficients of P1 :  [1 2]
Coefficients of P2 :  [4 9 5 4]


Order / Degree of P1 :  1
Order / Degree of P2 :  3

 
Code 2 : Basic mathematical operation on polynomial




# Python code explaining
# numpy.poly1d()
  
# importing libraries
import numpy as np
  
# Constructing polynomial
p1 = np.poly1d([1, 2])
p2 = np.poly1d([4, 9, 5, 4])
  
print ("P1 : ", p1)
print ("\n p2 : \n", p2)
  
print ("\n\np1 ^ 2 : \n", p1**2)
print ("p2 ^ 2 : \n", np.square(p2))
  
p3 = np.poly1d([1, 2], variable = 'y')
print ("\n\np3 : ", p3)
  
  
print ("\n\np1 * p2 : \n", p1 * p2)
print ("\nMultiplying two polynimials : \n"
       np.poly1d([1, -1]) * np.poly1d([1, -2]))

Output :

P1 :   
1 x + 2

 p2 : 
    3     2
4 x + 9 x + 5 x + 4


p1 ^ 2 : 
    2
1 x + 4 x + 4
p2 ^ 2 : 
 [16 81 25 16]


p3 :   
1 y + 2


p1 * p2 : 
    4      3      2
4 x + 17 x + 23 x + 14 x + 8

Multiplying two polynimials : 
    2
1 x - 3 x + 2

 Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.  

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning – Basic Level Course




My Personal Notes arrow_drop_up
Recommended Articles
Page :