Skip to content
Advertisement

How do I remove all zero elements from a NumPy array?

I have a rank-1 numpy.array of which I want to make a boxplot. However, I want to exclude all values equal to zero in the array. Currently, I solved this by looping the array and copy the value to a new array if not equal to zero. However, as the array consists of 86 000 000 values and I have to do this multiple times, this takes a lot of patience.

Is there a more intelligent way to do this?

Advertisement

Answer

This is a case where you want to use masked arrays, it keeps the shape of your array and it is automatically recognized by all numpy and matplotlib functions.

JavaScript
User contributions licensed under: CC BY-SA
7 People found this is helpful
Advertisement