> How do you do it in APL?   Translate it into J.

Sure, that's how I started out. I used to be able to write dtb{each}
[]SPLIT t[;{iota}4]
but mindless translation to J looks Japlese to me (i.e. scope for improvement):

([: dtb&.> <"1)(i.4){"1 t

It may be just a matter of taste / experience, but IMO that's neither
elegant nor memorable.

> {."1 ;: t

Now that is nice!
And it seems to work how I want it with other examples in the same vein:

   t=: >@((10{a.)&cut) 0 : 0
Mon[day]     Ian
Tues[day]    Avril
We[dnesday]  Barbara
)

Ian

On Sun, Feb 14, 2010 at 4:58 AM, Roger Hui <rhui...@shaw.ca> wrote:
> How do you do it in APL?   Translate it into J.
>
> Alternatively, your table t is a very special table
> and so admits some special phrases.  e.g.
>
> {."1 ;: t
>
>
>
> ----- Original Message -----
> From: Ian Clark <earthspo...@googlemail.com>
> Date: Saturday, February 13, 2010 20:50
> Subject: [Jprogramming] Slicing and dicing a 2D char mx
> To: Programming forum <programming@jsoftware.com>
>
>> 1. If I have a M-by-N table with entries like this (you may recognise
>> the example ;)...
>>
>> ...
>> {.  curlylfdot
>> {:  curlylfco
>> {:: curlylfcoco
>> }   curlyrt
>> ...
>>
>> how do I neatly slice off the first 3 columns (say) into a boxed list
>> of tally M to serve as a lookup index?
>> Ditto any given field, i.e. set of columns?
>> I'm often doing it, but a different way each time, and the
>> methods I
>> use are cumbersome.
>>
>> 2. Is there already a slice'n'dice cookbook on the wiki, to give quick
>> answers to questions like this?
> ----------------------------------------------------------------------
> 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