Re: irritating little problem
- To: mathgroup at smc.vnet.net
 - Subject: [mg32938] Re: [mg32906] irritating little problem
 - From: Tomas Garza <tgarza01 at prodigy.net.mx>
 - Date: Wed, 20 Feb 2002 01:26:20 -0500 (EST)
 - References: <200202190729.CAA18757@smc.vnet.net>
 - Sender: owner-wri-mathgroup at wolfram.com
 
First, you must look at those elements that are appear more than once, and
then find their positions. A possibility - which I don't think is "brute
force" - is as follows (as an example, I take a vector of digits, but the
method works in general):
In[1]:=
a = Table[Random[Integer, {0, 9}], {20}]
Out[1]=
{5, 4, 9, 1, 1, 8, 5, 0, 9, 5, 5, 4, 1, 3, 6, 5, 9, 6, 0,
  8}
In[2]:=
<< Statistics`DataManipulation`
In[3]:=
b = Select[Frequencies[a], #[[1]] > 1 & ]
Out[3]=
{{2, 0}, {3, 1}, {2, 4}, {5, 5}, {2, 6}, {2, 8}, {3, 9}}
In[4]:=
({#[[2]], Flatten[Position[a, #[[2]]]]} & ) /@ b
Out[4]=
{{0, {8, 19}}, {1, {4, 5, 13}}, {4, {2, 12}},
  {5, {1, 7, 10, 11, 16}}, {6, {15, 18}}, {8, {6, 20}},
  {9, {3, 9, 17}}}
The last output says digit 0 appears in positions {8, 19}, digit 1 appears
in positions {4, 5, 13}, etc.
Tomas Garza
Mexico City
----- Original Message -----
From: "KIMIC Weijnitz Peter" <micweij at eka.ericsson.se>
To: mathgroup at smc.vnet.net
Subject: [mg32938] [mg32906] irritating little problem
> I have a simple vector
> and I want to find the position of elements that are equal.
>
> I.e I want to test the vector and find all cases of similar elements.
>
> Brute force is not what I want, it can be a long vector.
> Best regards
> Petr W
>
- References:
- irritating little problem
- From: KIMIC Weijnitz Peter <micweij@eka.ericsson.se>
 
 
 - irritating little problem