Matrix Element Extraction
- To: mathgroup at smc.vnet.net
- Subject: [mg46622] Matrix Element Extraction
- From: "Curt Fischer" <crf3 at po.cwru.edu>
- Date: Wed, 25 Feb 2004 13:07:14 -0500 (EST)
- Sender: owner-wri-mathgroup at wolfram.com
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
- Follow-Ups:
- Re: Matrix Element Extraction
- From: Tomas Garza <tgarza01@prodigy.net.mx>
- Re: Matrix Element Extraction
- From: Andrzej Kozlowski <akoz@mimuw.edu.pl>
- Re: Matrix Element Extraction