Note also that you can use plain, uninverted # to expand arguments: 1 1j1 1 (#!.1) 3 3 $ 0 0 0 0 0 0 0 1 1 1 0 0 0 1 1j1 1 (#!.1"1) 3 3 $ 0 0 0 1 0 0 0 1 0 0 0 1 0
Which approach you pick often depends on whether it's easier for you to express your expansion vector with length N (complex numbers) or N+1 (boolean numbers). -Dan This is worth remembering as well, though I rarely see it used: 1 2 1 # i. 3 3 0 1 2 3 4 5 3 4 5 6 7 8 Please excuse typos; sent from a phone. > On Sep 11, 2014, at 5:32 AM, Raul Miller <[email protected]> wrote: > > Here are some perhaps relevant examples: > > 1 1 0 1 #inv (3 3$ 0) > 0 0 0 > 0 0 0 > 0 0 0 > 0 0 0 > 1 1 0 1 #inv!.1 (3 3$ 0) > 0 0 0 > 0 0 0 > 1 1 1 > 0 0 0 > 1 1 0 1 #inv!.1"1 (3 3$ 0) > 0 0 1 0 > 0 0 1 0 > 0 0 1 0 > 1 1 0 1 #inv!.1"1 (1 1 0 1) #inv!.1 (3 3$ 0) > 0 0 1 0 > 0 0 1 0 > 1 1 1 1 > 0 0 1 0 > 1 1 0 1 # 1 1 0 1 #inv!.1"1 (1 1 0 1) #inv!.1 (3 3$ 0) > 0 0 1 0 > 0 0 1 0 > 0 0 1 0 > 1 1 0 1 #("1) 1 1 0 1 # 1 1 0 1 #inv!.1"1 (1 1 0 1) #inv!.1 (3 3$ 0) > 0 0 0 > 0 0 0 > 0 0 0 > (i.3) 2} 1 1 0 1 #inv (3 3$0) > 0 0 0 > 0 0 0 > 0 1 2 > 0 0 0 > (i.4) 2}"0 1 (1 1 0 1) #inv"1 (i.3) 2} 1 1 0 1 #inv (3 3$0) > 0 0 0 0 > 0 0 1 0 > 0 1 2 2 > 0 0 3 0 > (i.4) 2}"0 1 (1 1 0 1) #inv"1 (0 1 3) 2} 1 1 0 1 #inv (3 3$0) > 0 0 0 0 > 0 0 1 0 > 0 1 2 3 > 0 0 3 0 > > The whole #inv thing is a bit quirky but was quite deliberate. This was a > primitive in APL, but the syntax was ... strange. Rather than trying to > find a special symbol for this operation, Iverson put it on #inv (since - > logically speaking - it's the inverse of #). > > Thanks, > > -- > Raul > > >> On Thu, Sep 11, 2014 at 5:21 AM, Sebastian <[email protected]> wrote: >> >> Hi, >> >> I know the verbs , ,. ,: to add rows, columns and dimensions to matrices. >> It is easy to add these to begin or the end of the corrosponding dimension, >> but what is to do, if I want to add one row/column in the middle of a >> matrix? Is the only way to slice the matrix in two pieces and join them >> with the new row/column? >> >> A few examples: >> >> Initial situation: >> >> 3 3 $ 0 >> 0 0 0 >> >> 0 0 0 >> >> 0 0 0 >> >> >> add column somewhere to the middle: >> >> 0 0 1 0 >> >> 0 0 1 0 >> >> 0 0 1 0 >> >> >> >> add row somewhere to the middle: >> >> 0 0 1 0 >> >> 0 0 1 0 >> >> 1 1 1 1 >> >> 0 0 1 0 >> >> >> remove the added column: >> >> 0 0 0 >> >> 0 0 0 >> >> 1 1 1 >> >> 0 0 0 >> >> >> >> and the row: >> >> >> >> 0 0 0 >> >> 0 0 0 >> >> 0 0 0 >> >> >> >> Can anyone help me with this? >> >> >> >> Regards >> >> Sebastian >> ---------------------------------------------------------------------- >> For information about J forums see http://www.jsoftware.com/forums.htm > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
