[Numpy-discussion] Selecting columns of a matrix

Travis Oliphant oliphant.travis at ieee.org
Wed Jun 21 10:52:24 CDT 2006


Bill Baxter wrote:
> On 6/21/06, *Simon Burton* <simon at arrowtheory.com 
> <mailto:simon at arrowtheory.com>> wrote:
>
>     On Wed, 21 Jun 2006 13:48:48 +0900
>     "Bill Baxter" <wbaxter at gmail.com <mailto:wbaxter at gmail.com>> wrote:
>
>     >
>     > >>> a[:,num.where(v>0.5)[0]]
>     > array([[1, 2, 4],
>     >        [6, 7, 9]])
>     >
>     > I'll put that up on the Matlab->Numpy page.
>
>     oh, yuck. What about this:
>
>     >>> a[:,num.nonzero(v>0.5)]
>     array([[0, 1, 3],
>            [5, 6, 8]])
>     >>> 
>
>
> The nonzero() function seems like kind of an anomaly in and of 
> itself.    It doesn't behave like other index-returning numpy 
> functions, or even like the method version, v.nonzero(), which returns 
> the typical tuple of array.  So my feeling is ... ew to numpy.nonzero.

How about we add the ability so that

a[:, <boolean>]  gets translated to

a[:, nonzero(<boolean>)] ?

-Travis





More information about the Numpy-discussion mailing list