[Numpy-discussion] Finding a row match within a numpy array

mark markbak@gmail....
Wed Aug 15 05:59:48 CDT 2007

```Oops, 'find' is in pylab (matplotlib).
I guess in numpy you have to use 'where', which does almost the same,
but it returns a Tuple.
Is there a function that is more like the find in matplotlib?
Mark

On Aug 15, 12:26 pm, Andy Cheesman <Andy.chees...@bristol.ac.uk>
wrote:
> Thanks for the speedy response but where can I locate the find function
> as it isn't in numpy.
>
> Andy
>
>
>
> mark wrote:
> > I think you can create an array with a true value in the right spot as
> > folows:
>
> > row = all( equal(a,b), 1 )
>
> > Then you can either find the row (but you already knew that one, as it
> > is b)
>
> > a[row]
>
> > or the row index
>
> > find(row==True)
>
> > Mark
>
> > On Aug 15, 11:53 am, Andy Cheesman <Andy.chees...@bristol.ac.uk>
> > wrote:
> >> Dear nice people
>
> >> I'm trying to match a row (b) within a large numpy array (a). My most
> >> successful attempt is below
>
> >> hit = equal(b, a)
> >> total_hits = add.reduce(hit, 1)
> >> max_hit = argmax(total_hits, 0)
>
> >> where ...
> >> a = array([[ 0,  1,  2,  3],
> >>            [ 4,  5,  6,  7],
> >>            [ 8,  9, 10, 11],
> >>            [12, 13, 14, 15]])
>
> >> b = array([8,  9, 10, 11])
>
> >> I was wondering if people could suggest a possible more efficient route
> >> as there seems to be numerous steps.
>
> >> Thanks
> >> Andy
> >> _______________________________________________
> >> Numpy-discussion mailing list
> >> Numpy-discuss...@scipy.orghttp://projects.scipy.org/mailman/listinfo/numpy-discussion
>
> > _______________________________________________
> > Numpy-discussion mailing list
> > Numpy-discuss...@scipy.org
> >http://projects.scipy.org/mailman/listinfo/numpy-discussion
>
> _______________________________________________
> Numpy-discussion mailing list
> Numpy-discuss...@scipy.orghttp://projects.scipy.org/mailman/listinfo/numpy-discussion

```