Hi Raul and Dan,

Many thanks for your great help! :)

I found # as copy in the j vocabulary now, but I cannot find #inv. Where I have to search?

Sebastian

------ Originalnachricht ------
Von: "Raul Miller" <[email protected]>
An: "Programming forum" <[email protected]>
Gesendet: 11.09.2014 12:58:37
Betreff: Re: [Jprogramming] Extend/reduce matrix dimensions

Here's an example of how I frequently use non-truth-valued #

   9!:7]9 1 1#'+|-'

Thanks,

--
Raul

On Thu, Sep 11, 2014 at 6:49 AM, Dan Bron <[email protected]> wrote:

 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

----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to