[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: findng array[3] in array[3,n]
tbowers wrote:
>
> If I have
>
> a=[ $
> [0,1,2], $
> [3,4,5], $
> [6,7,8]]
>
> b=[3,4,5]
>
> how do I find where in a is the row vector b? The answer should
> be 1, the 2nd row of a. I've tried many
> permutations of where(), but I just don't get it. The only way I
> can get an answer is to loop through the rows till i find a match.
> What I'm really tryin' to do is to find a color in a color table,
> e.g. load RAINBOW color table, (loadct,13) then identify
> where a color is. For the color that's listed 6th in the color table
> (an almost black) that'd be the 5th row index. Like:
> So, does anyone know see an elegant solution to this problem??
I can't say it's elegant, but:
where(total(rebin(b,n_elements(b),(size(a,/DIMENSIONS))[1],/SAMP) eq
a,1) eq n_elements(b))
The rule is, when comparing arrays, you must expand the smaller to the
size of the larger.
JD