MathGroup Archive 2005

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

Search the Archive

Re: Count using pattern on two different matrices


L1=Table[Random[Integer]==1,{5},{2}]

{{True, False}, {True, True}, {True, False}, {True, True}, 
  {True, False}}

L2=Table[Random[Integer]==1,{5},{3}]

{{False, True, True}, {True, True, True}, 
  {False, True, True}, {False, True, True}, 
  {False, True, False}}

Count[Thread[{L1[[All,2]],L2[[All,3]]}],
  _?(#[[1]]==False&&#[[2]]==True&)]

2

Count[Thread[{L1[[All,2]],L2[[All,3]]}],
  _?(Not[#[[1]]]&&#[[2]]&)]

2


Bob Hanlon

> 
> From: Lee Newman <leenewm at umich.edu>
To: mathgroup at smc.vnet.net
> Date: 2005/05/14 Sat AM 04:58:25 EDT
> Subject: [mg57082] [mg57079] Count using pattern on two different matrices
> 
> I have two matrices with an equal number of rows, but not necessarily 
> columns, for example:
> 
> L1= {{True,False},{False, True},{False, False}, etc.....} ;
> L2= {{True,False,False},{True, True,True},{False, True,False}, etc.....} ;
> 
> I would like to compute a count of the number of rows in which one of 
> the columns of L1 meets some criterion, and one of the columns of L2 
> meets some criterion, i.e.  If L1[[row,2 ]]==False  and 
> L2[[row,3]]==True  then this row contributes 1 to the count.
> 
> I suspect that there is an elegant way to do this, perhaps using Count[] 
> and MapThread, but I can't figure it out other than resorting to a 
> rather clumsy For or Do loop that would check line by line and maintain 
> a counter.
> 
> Any help would be appreciated,
> Lee
> 
> 


  • Prev by Date: Re: Re: Hold problems with FindRoot
  • Next by Date: Re: DSolve and K$31, i am puzzled
  • Previous by thread: Re: Count using pattern on two different matrices
  • Next by thread: Re: Count using pattern on two different matrices