 
 
 
 
 
 
Re: Matrix Element Extraction
- To: mathgroup at smc.vnet.net
- Subject: [mg46634] Re: Matrix Element Extraction
- From: Jens-Peer Kuska <kuska at informatik.uni-leipzig.de>
- Date: Thu, 26 Feb 2004 17:53:22 -0500 (EST)
- Organization: Universitaet Leipzig
- References: <c1irc0$6bn$1@smc.vnet.net>
- Reply-to: kuska at informatik.uni-leipzig.de
- Sender: owner-wri-mathgroup at wolfram.com
Hi,
I realy love your code but 
Select[Position[mat, _Integer], Length[#] == 2 && MemberQ[#, 3] &]
may do what you want not only _mostly_
but it is not so wonderful cryptic :-(
Regards
  Jens
Curt Fischer wrote:
> 
> In a matrix, I want to find the positions of all the integer elements in the
> rightmost column or the bottom row.
> 
> In[1]:=
> mat={{1,2,1},{4,5,6},{7,8,-Infinity}}
> 
> Out[1]=
> {{1,2,1},{4,5,6},{7,8,-Infinity}}
> 
> In[2]:=
> Position[Map[((MemberQ[Union[Flatten[{mat[[Length[mat]]],
>                 mat[[All,Dimensions[mat][[
>                       2]] ]]}]],#])&&(#!=-Infinity))&,mat,{2}],True]
> 
> Out[2]=
> {{1,1},{1,3},{2,3},{3,1},{3,2}}
> 
> This _mostly_ does what I want, but took me forever to think of.  I'm
> convinced there must be an easier way...
> 
> Especially, is there an easy way to keep the point {1,1} from appearing on
> this
> list, other than using a replacement rule and an If[] command?  ({1,1} is
> not a position in the bottom row or right most column, so I don't want this
> point returned.)
> 
> Thanks for any advice.
> 
> --
> Curt Fischer

