Mathematica 9 is now available
Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
2006
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*November
*December
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2006

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: List Comparison

  • To: mathgroup at smc.vnet.net
  • Subject: [mg67155] Re: List Comparison
  • From: bghiggins at ucdavis.edu
  • Date: Sun, 11 Jun 2006 02:17:06 -0400 (EDT)
  • References: <e6e2b7$1uc$1@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

Try this:

result1={};Table[If[(list1[[n,1]]===list2[[n,1]])&&(list1[[
            n,2]]===list2[[n,2]]),AppendTo[result1,Append[list1[[n]],
            list2[[n,3]]]]],{n,1,Length[list1]}];
result1

Out[139]=
{{1,aa,565,34},{1,bb,566,66},{1,cc,546,5443},{2,dd,56,76},{2,ff,56,87}}

result2={};Table[If[(list1[[n,1]]=!=list2[[n,1]])||(list1[[
            n,2]]=!=list2[[n,2]]),AppendTo[result2,list1[[n]]]],{n,1,
            Length[list1]}];
result2

Out[141]=
{{2,ss,5}}

In[145]:=
result3={};Table[If[(list1[[n,1]]=!=list2[[n,1]])||(list1[[
              n,2]]=!=list2[[n,2]]),AppendTo[result3,list2[[n]]]],{n,1,
            Length[list1]}];
result3

Out[146]=
{{2,mm,87}}

Cheers,
Brian



LectorZ wrote:
> Dear experts,
>
> I want to compare two lists containing sublists and make out of them 3
> result lists.
> The comparison applies to the first two elements of the sublists.
>
> list1 = {{1, aa, 565}, {1, bb, 566}, {
>   1, cc, 546}, {2, dd, 56}, {2, ff, 56}, {2, ss, 5}}
> list2 = {{1, aa,
>   34}, {1, bb, 66}, {1, cc, 5443}, {2, dd, 76}, {2, ff, 87}, {2, mm,
> 87}}
>
> Result ONE should be:
>
> If the FIRST element AND the SECOND elements of the sublists are equal,
> then prepend the THIRD elements from list2.
>
> result1={{1, aa, 565, 34}, {1, bb, 566, 66}, {
>   1, cc, 546, 5443}, {2, dd, 56, 76}, {2, ff, 56, 87}}
>
> Result TWO should be:
> the FIRST element OR the SECOND elements of the sublists are NOT equal,
> then display the difference from the list1 perspective
>
> result2={{2, ss, 5}}
>
> Result THREE should be:
> the FIRST element OR the SECOND elements of the sublists are NOT equal,
> then display the difference from the list2 perspective
> result3={{2, mm, 87}}
> 
> Thanks for your help
> 
> LZ


  • Prev by Date: Re: List Comparison
  • Next by Date: Re: List Comparison
  • Previous by thread: Re: List Comparison
  • Next by thread: Re: List Comparison