Bird
Raised Fist0
NumPydata~5 mins

Polynomial operations with np.poly in NumPy - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does np.poly do in NumPy?

np.poly returns the coefficients of a polynomial whose roots are given. It helps create a polynomial from its roots.

Click to reveal answer
beginner
How are polynomial coefficients ordered in NumPy arrays?

Coefficients are ordered from the highest degree term to the constant term. For example, [1, -3, 2] means 1*x^2 - 3*x + 2.

Click to reveal answer
intermediate
How to multiply two polynomials using NumPy?

Use np.polymul(p1, p2) where p1 and p2 are arrays of coefficients. It returns coefficients of the product polynomial.

Click to reveal answer
beginner
What function helps find the roots of a polynomial given its coefficients?

np.roots(coefficients) returns the roots of the polynomial defined by the given coefficients.

Click to reveal answer
intermediate
How to add two polynomials in NumPy?

Pad the shorter coefficient array with zeros on the left, then add element-wise. NumPy does not have a direct add function for polynomials.

Click to reveal answer
What does np.poly([1, 2, 3]) return?
ACoefficients of polynomial with roots 1, 2, 3
BRoots of polynomial with coefficients 1, 2, 3
CPolynomial evaluated at points 1, 2, 3
DDerivative of polynomial with roots 1, 2, 3
How are polynomial coefficients ordered in NumPy arrays?
AFrom highest degree to constant term
BRandom order
CFrom constant term to highest degree
DFrom lowest degree to highest degree
Which function multiplies two polynomials in NumPy?
Anp.polyadd
Bnp.polymul
Cnp.polydiv
Dnp.polyroots
What does np.roots([1, -3, 2]) return?
AIntegral of polynomial
BCoefficients of polynomial
CDerivative of polynomial
DRoots of polynomial x² - 3x + 2
How to add two polynomials in NumPy?
AUse np.polyadd
BUse np.polymul
CPad shorter array with zeros and add element-wise
DUse np.polydiv
Explain how to create a polynomial from its roots using NumPy.
Think about how roots relate to polynomial factors.
You got /4 concepts.
    Describe how to multiply two polynomials represented by coefficient arrays in NumPy.
    Multiplying polynomials is like multiplying their coefficient arrays.
    You got /3 concepts.

      Practice

      (1/5)
      1. What does the np.poly function do in NumPy?
      easy
      A. It evaluates a polynomial at given points.
      B. It calculates the derivative of a polynomial.
      C. It finds the roots of a polynomial from coefficients.
      D. It returns polynomial coefficients from given roots.

      Solution

      1. Step 1: Understand the purpose of np.poly

        The function np.poly takes roots of a polynomial as input and returns the coefficients of the polynomial with those roots.
      2. Step 2: Differentiate from other polynomial functions

        Other functions like np.polyder find derivatives, np.polyval evaluates polynomials, and np.roots finds roots from coefficients, so they are different.
      3. Final Answer:

        It returns polynomial coefficients from given roots. -> Option D
      4. Quick Check:

        np.poly = coefficients from roots [OK]
      Hint: Remember: np.poly converts roots to coefficients [OK]
      Common Mistakes:
      • Confusing np.poly with np.roots
      • Thinking np.poly evaluates polynomials
      • Mixing up derivative functions with np.poly
      2. Which of the following is the correct syntax to get polynomial coefficients from roots [-1, 2, 3] using NumPy?
      easy
      A. np.poly([-1, 2, 3])
      B. np.polyroots([-1, 2, 3])
      C. np.polyval([-1, 2, 3])
      D. np.polycoef([-1, 2, 3])

      Solution

      1. Step 1: Recall the correct function name

        The function to get polynomial coefficients from roots is np.poly.
      2. Step 2: Check the syntax

        The correct syntax is np.poly([-1, 2, 3]). Other options are not valid NumPy functions.
      3. Final Answer:

        np.poly([-1, 2, 3]) -> Option A
      4. Quick Check:

        Correct function is np.poly with roots list [OK]
      Hint: Use np.poly with a list of roots inside parentheses [OK]
      Common Mistakes:
      • Using non-existent functions like np.polyroots
      • Confusing np.polyval with np.poly
      • Misspelling function names
      3. What is the output of the following code?
      import numpy as np
      coeffs = np.poly([1, 2])
      print(coeffs)
      medium
      A. [1. 3. 2.]
      B. [1. -3. 2.]
      C. [1. -2. 1.]
      D. [1. 2. -3.]

      Solution

      1. Step 1: Understand np.poly output for roots [1, 2]

        np.poly returns coefficients of polynomial with roots 1 and 2, which is (x - 1)(x - 2) = x^2 - 3x + 2.
      2. Step 2: Write coefficients in descending order

        The coefficients are [1, -3, 2], representing 1*x^2 - 3*x + 2.
      3. Final Answer:

        [1. -3. 2.] -> Option B
      4. Quick Check:

        Roots [1,2] -> coeffs [1, -3, 2] [OK]
      Hint: Multiply (x - root) terms and list coefficients [OK]
      Common Mistakes:
      • Mixing signs of coefficients
      • Listing roots instead of coefficients
      • Confusing order of coefficients
      4. The following code throws an error. What is the problem?
      import numpy as np
      coeffs = np.poly(3, 4, 5)
      print(coeffs)
      medium
      A. roots should be a list or array, not a tuple without brackets
      B. np.poly does not accept more than two roots
      C. print statement syntax is incorrect
      D. np.poly requires integer roots only

      Solution

      1. Step 1: Check the input to np.poly

        The roots 3, 4, 5 are passed as separate positional arguments instead of a single sequence. np.poly expects one array-like input (list, array, or tuple).
      2. Step 2: Fix the roots input

        Wrap roots in brackets: coeffs = np.poly([3, 4, 5]) to pass a list to np.poly.
      3. Final Answer:

        roots should be a list or array, not a tuple without brackets -> Option A
      4. Quick Check:

        np.poly needs list/array input [OK]
      Hint: Always pass roots as list or array to np.poly [OK]
      Common Mistakes:
      • Passing tuple without brackets
      • Assuming np.poly limits root count
      • Misunderstanding print syntax errors
      5. You have roots [-2, 0, 3] and want to create a polynomial with leading coefficient 2 instead of 1. How can you do this using np.poly?
      hard
      A. Add 2 to the coefficients returned by np.poly
      B. Pass an extra argument 2 to np.poly as np.poly([-2, 0, 3], 2)
      C. Multiply the output of np.poly([-2, 0, 3]) by 2
      D. Use np.polyval with 2 as the first argument

      Solution

      1. Step 1: Generate coefficients from roots

        Use np.poly([-2, 0, 3]) to get coefficients for polynomial with leading coefficient 1.
      2. Step 2: Scale coefficients to change leading coefficient

        Multiply all coefficients by 2 to make leading coefficient 2, since np.poly does not take leading coefficient as argument.
      3. Final Answer:

        Multiply the output of np.poly([-2, 0, 3]) by 2 -> Option C
      4. Quick Check:

        Scale coefficients to change leading term [OK]
      Hint: Multiply coefficients array to adjust leading coefficient [OK]
      Common Mistakes:
      • Trying to pass leading coefficient as np.poly argument
      • Adding instead of multiplying coefficients
      • Using np.polyval incorrectly
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard