[Numpy-discussion] Getting indices from numpy array with condition

Robert Kern robert.kern at gmail.com
Tue Nov 18 15:06:06 EST 2008


On Tue, Nov 18, 2008 at 04:48, David Warde-Farley <dwf at cs.toronto.edu> wrote:
> On 18-Nov-08, at 5:29 AM, Nicolas ROUX wrote:
>
>> Hi,
>>
>> Maybe this is not so clever, but I can't find it in the doc.
>> I need to get all indices/index of all occurrences of a value in a
>> numpy
>> array
>>
>>
>> As example:
>>
>> a = numpy.array([1,2,3],[4,5,6],[7,8,9])
>> I need to get the indice/index of all array elements where a[a>3]
>
> numpy.where(a > 3)

I like to discourage this use of where(). For some reason, back in
Numeric's days, where() got stuck with two functionalities. nonzero()
is the preferred function for this functionality. IMO, where(cond,
if_true, if_false) should be the only use of where().

-- 
Robert Kern

"I have come to believe that the whole world is an enigma, a harmless
enigma that is made terrible by our own mad attempt to interpret it as
though it had an underlying truth."
  -- Umberto Eco



More information about the NumPy-Discussion mailing list