O'Reilly logo

NumPy Cookbook - Second Edition by Ivan Idris

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Indexing with Booleans

Boolean indexing is indexing based on a boolean array and falls under the category of fancy indexing.

How to do it...

We will apply this indexing technique to an image:

  1. Image with dots on the diagonal.

    This is in some way similar to the Fancy indexing recipe in this chapter. This time, we select modulo 4 points on the diagonal of the image:

    def get_indices(size):
       arr = np.arange(size)
       return arr % 4 == 0

    Then we just apply this selection and plot the points:

    lena1 = lena.copy() 
    xindices = get_indices(lena.shape[0])
    yindices = get_indices(lena.shape[1])
    lena1[xindices, yindices] = 0
    plt.subplot(211)
    plt.imshow(lena1)
  2. Select the array values between quarter and three quarters of the maximum value, and set them to 0:
    lena2[(lena > lena.max()/4) ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required