So that brings up another interesting problem. How
to
  box ranges
​?​
:

    ]a=:>:?~20
9 12 2 20 14 11 13 15 7 5 3 19 8 1 4 16 10 6 18 17

    0 5 10 15 brng a
┌─────────┬──────────┬──────────────┬──────────────┐
│2 5 3 1 4│9 7 8 10 6│12 14 11 13 15│20 19 16 18 17│
└─────────┴──────────┴──────────────┴──────────────┘

S
​o how do you construct brng?​

Skip Cave
Cave Consulting LLC

On Sun, Sep 24, 2017 at 2:09 PM, 'Mike Day' via Programming <
programm...@jsoftware.com> wrote:

> I was about to send something when we had to go out for a bit...
>
> My best so far is
>     ((] #~ 1 = I.)~ (0 _1 + ])) ~
> assuming I've copied it correctly...
>
> Mike
>
> Please reply to mike_liz....@tiscali.co.uk.
> Sent from my iPad
>
> > On 24 Sep 2017, at 18:45, Skip Cave <s...@caveconsulting.com> wrote:
> >
> > Marshall,
> >
> > Wow! that is neat! I hadn't really understood dyadic I. but this forced
> me
> > to     try to understand it:
> >
> >     8 100 (]#~1=I.) 2 10 45 300
> >
> > 10 45
> >
> >     8 100 I. 2 10 45 300
> >
> > 0 1 1 2
> >
> >     1 = 8 100 I. 2 10 45 300
> >
> > 0 1 1 0
> >
> >     (1 = 8 100 I. 2 10 45 300) # 2 10 45 300
> >
> > 10 45
> >
> >     8 100 I. 2 10 45 300
> >
> > 0 1 1 2
> >
> >     1 8 100 I. 2 10 45 300
> >
> > 1 2 2 3
> >
> >     1 8 100 I. 2 10 45 300 450
> >
> > 1 2 2 3 3
> >
> >     1 8 100 350 I. 2 10 45 300 450
> >
> > 1 2 2 3 4
> >
> >     1 8 100 350 I. 300 2 45 10 450
> >
> > 3 1 2 2 4
> >
> > So now I'm getting a feel for I. Reading the terse Vocabulary description
> > of dyadic I. didn't help much in making the I. functionality clear, at
> > least for me. The NuVoc description wasn't much more helpful, but the
> > examples after the description in Nuvoc cleared things up considerably.
> >
> > Also, the dissect tool was very helpful in figuring out how J parsed the
> > whole dyadic verb. Who is the author of the dissect tool? That's a great
> > help in learning J.
> >
> > Skip
> >
> > Skip Cave
> > Cave Consulting LLC
> >
> > On Sun, Sep 24, 2017 at 3:14 AM, Marshall Lochbaum <mwlochb...@gmail.com
> >
> > wrote:
> >
> >> Try
> >>
> >> rng =: ] #~ 1=I.
> >>
> >> it's about half as fast because I. is not very well-optimized.
> >>
> >> Marshall
> >>
> >>> On Sun, Sep 24, 2017 at 02:29:31AM -0500, Skip Cave wrote:
> >>> Here's a function I came up with to select numbers in a vector which
> are
> >>> within some range.
> >>>
> >>> Find all the numbers between 10 & 100 in a set of random numbers from 0
> >> to
> >>> 200:
> >>>
> >>>
> >>>         rng =. 4 : '((({.x)</y)*.(({:x)>/y))#y'
> >>>
> >>>
> >>>       10 100 rng ?50$200
> >>>
> >>> 89 91 32 85 84 27 31 20 28 66 96 93 22 85 39 97 82 35 90 67 34 35 67 95
> >> 50
> >>>
> >>>
> >>> Between 120 & 180:
> >>>
> >>>
> >>>         120 180 rng ?50$200
> >>>
> >>> 148 163 133 165 150 178 121 146 161 179
> >>>
> >>>
> >>> Is there a more concise/efficient way to select numbers in a range?
> >>>
> >>> Skip Cave
> >>> Cave Consulting LLC
> >>> ----------------------------------------------------------------------
> >>> 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