Re: how to pick out alternating columns and rows in a matrix?
- To: mathgroup at christensen.cybernetics.net
- Subject: [mg588] Re: [mg551] how to pick out alternating columns and rows in a matrix?
- From: Count Dracula <lk3a at kelvin.seas.virginia.edu>
- Date: Wed, 22 Mar 1995 08:49:22 -0500
Here's a definition for a function to select odd(default) or even (with sel = EvenQ) rows and columns of a matrix: altrowcol[(m_)?MatrixQ, sel_:OddQ] := m[[Apply[Sequence, (Select[Range[#1], sel] & ) /@ Dimensions[u]]]] Example usage: In[1]:= u = Array[a, {6, 7}]; In[2]:= altrowcol[u]//MatrixForm Out[2]//MatrixForm= a[1, 1] a[1, 3] a[1, 5] a[1, 7] a[3, 1] a[3, 3] a[3, 5] a[3, 7] a[5, 1] a[5, 3] a[5, 5] a[5, 7] In[3]:= altrowcol[u, EvenQ] //MatrixForm Out[3]//MatrixForm= a[2, 2] a[2, 4] a[2, 6] a[4, 2] a[4, 4] a[4, 6] a[6, 2] a[6, 4] a[6, 6] ___________________________________________________________________________________ Levent Kitis lk3a at cars.mech.virginia.edu lk3a at kelvin.seas.virginia.edu University of Virginia Department of Mechanical, Aerospace and Nuclear Engineering ___________________________________________________________________________________