Bird
Raised Fist0
NumPydata~5 mins

np.sign() for sign detection in NumPy - Cheat Sheet & Quick Revision

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What does the np.sign() function do in NumPy?

The np.sign() function returns the sign of each element in an array. It outputs 1 for positive numbers, -1 for negative numbers, and 0 for zeros.

Click to reveal answer
beginner
What output does np.sign() give for the input array [-3, 0, 4]?

It returns [-1, 0, 1] because -3 is negative, 0 is zero, and 4 is positive.

Click to reveal answer
intermediate
Why is np.sign() useful in data science?

It helps quickly identify if values are positive, negative, or zero. This is useful for tasks like filtering data, feature engineering, or understanding trends.

Click to reveal answer
intermediate
How does np.sign() handle floating point numbers close to zero?

It treats any positive number (even very small) as 1, any negative number as -1, and exactly zero as 0. It does not round or threshold values.

Click to reveal answer
beginner
Can np.sign() be applied to multi-dimensional arrays?

Yes, np.sign() works element-wise on arrays of any shape, returning an array of the same shape with the sign of each element.

Click to reveal answer
What does np.sign(-7) return?
A0
B-1
C1
D7
What is the output of np.sign([3, -2, 0])?
A[1, 1, 0]
B[-1, 0, 1]
C[3, -2, 0]
D[1, -1, 0]
Which of these is NOT a valid output of np.sign()?
A2
B-1
C0
D1
If an array contains only zeros, what will np.sign() return?
AAn array of zeros
BAn array of negative ones
CAn array of ones
DAn error
How does np.sign() treat very small positive numbers like 0.00001?
AReturns -1
BReturns 0
CReturns 1
DReturns the original number
Explain how np.sign() works and give an example with a small array.
Think about how it tells if numbers are positive, negative, or zero.
You got /3 concepts.
    Describe a real-life situation where detecting the sign of numbers using np.sign() could be helpful.
    Consider when knowing if a value is above or below zero matters.
    You got /3 concepts.

      Practice

      (1/5)
      1. What does the np.sign() function return when applied to a negative number?
      easy
      A. -1
      B. 0
      C. 1
      D. The original number

      Solution

      1. Step 1: Understand np.sign() behavior

        The function returns -1 for negative numbers, 0 for zero, and 1 for positive numbers.
      2. Step 2: Apply to a negative number

        Since the input is negative, np.sign() returns -1.
      3. Final Answer:

        -1 -> Option A
      4. Quick Check:

        Negative number sign = -1 [OK]
      Hint: Negative input always gives -1 from np.sign() [OK]
      Common Mistakes:
      • Confusing negative with zero
      • Expecting original number as output
      • Thinking it returns boolean
      2. Which of the following is the correct syntax to get the sign of each element in a numpy array arr?
      easy
      A. np.sign(arr)
      B. arr.sign()
      C. sign(arr)
      D. np.sign_of(arr)

      Solution

      1. Step 1: Recall numpy function usage

        Functions in numpy are called with the syntax np.function_name(arguments).
      2. Step 2: Identify correct function call

        The correct function to get sign is np.sign(), so np.sign(arr) is correct.
      3. Final Answer:

        np.sign(arr) -> Option A
      4. Quick Check:

        Correct numpy function call = np.sign(arr) [OK]
      Hint: Use np.sign(array) to get signs of all elements [OK]
      Common Mistakes:
      • Using method on array like arr.sign()
      • Calling sign() without np prefix
      • Using non-existent np.sign_of()
      3. What is the output of the following code?
      import numpy as np
      arr = np.array([-3, 0, 4])
      sign_arr = np.sign(arr)
      print(sign_arr)
      medium
      A. [-3 0 4]
      B. [3 0 4]
      C. [0 0 0]
      D. [-1 0 1]

      Solution

      1. Step 1: Understand input array values

        The array has values -3 (negative), 0 (zero), and 4 (positive).
      2. Step 2: Apply np.sign() to each element

        np.sign(-3) = -1, np.sign(0) = 0, np.sign(4) = 1, so the output array is [-1, 0, 1].
      3. Final Answer:

        [-1 0 1] -> Option D
      4. Quick Check:

        Signs of [-3,0,4] = [-1,0,1] [OK]
      Hint: np.sign() maps negative to -1, zero to 0, positive to 1 [OK]
      Common Mistakes:
      • Expecting original values
      • Confusing zero with positive
      • Outputting boolean instead of sign
      4. The following code throws an error. What is the mistake?
      import numpy as np
      arr = [-1, 2, 0]
      signs = np.sign arr
      print(signs)
      medium
      A. print() syntax error
      B. Using list instead of numpy array
      C. Missing parentheses in function call
      D. np.sign does not exist

      Solution

      1. Step 1: Check function call syntax

        The code uses np.sign arr without parentheses, which is invalid syntax in Python.
      2. Step 2: Correct the syntax

        It should be np.sign(arr) with parentheses to call the function properly.
      3. Final Answer:

        Missing parentheses in function call -> Option C
      4. Quick Check:

        Function calls need parentheses [OK]
      Hint: Always use parentheses when calling functions [OK]
      Common Mistakes:
      • Omitting parentheses
      • Thinking lists cause error here
      • Assuming np.sign is undefined
      5. You have a numpy array data = np.array([-5, 0, 3, -2, 7]). How can you create a new array that replaces all negative values with 0, using np.sign()?
      hard
      A. data * np.sign(data)
      B. data * (np.sign(data) + 1) / 2
      C. np.sign(data) * 2
      D. data + np.sign(data)

      Solution

      1. Step 1: Understand np.sign() output

        np.sign(data) gives -1 for negatives, 0 for zero, 1 for positives.
      2. Step 2: Transform sign to mask for positives and zero

        Adding 1 to sign gives 0 for -1, 1 for 0, 2 for 1. Dividing by 2 maps negatives to 0, zero to 0.5, positives to 1.
      3. Step 3: Multiply original data by this mask

        Multiplying data by this mask sets negative values to 0, keeps zero and positive values unchanged (zero times 0.5 is 0).
      4. Final Answer:

        data * (np.sign(data) + 1) / 2 -> Option B
      5. Quick Check:

        Mask negatives to zero using (sign+1)/2 [OK]
      Hint: Use (sign+1)/2 as mask to zero negatives [OK]
      Common Mistakes:
      • Using sign directly multiplies negatives
      • Adding sign to data changes values wrongly
      • Confusing mask calculation