a version that works with boxes and strings...
eachxeachy =: 1 : '[ each u each ]'
> b ({:@:]`{.@:[EMAIL PROTECTED]) each x0 ; eachxeachy x1
+-+-+-+--+-+--+-+
|0|8|2|10|4|12|6|
+-+-+-+--+-+--+-+
(is there a way to factor out the @:] in each agenda case?)
----- Original Message ----
From: Eldon Eller <[EMAIL PROTECTED]>
To: Programming forum <[email protected]>
Sent: Tuesday, October 24, 2006 12:27:40 PM
Subject: Re: [Jprogramming] Choose Operators
Hows about this?
b=.1 0 1 0 1 0 1
x0=.i.7
x1=.7+i.7
(b*x0)+(-.b)*x1
0 8 2 10 4 12 6
Leigh J. Halliwell wrote:
> Thank you, Roger and Cliff. On my first question I was indeed thinking of
> the monadic amend. And Cliff's use of it for my second question is nice,
> too. But I'd still like to know how to make the identity/left operator work
> one-to one, as per my second question:
>
> "2) X0 and X1 are numeric vectors, and B is a Boolean vector. They all have
> the same length. I'd like to select from X0 where B is 0, and from X1 where
> B is 1. I try the expression: X1 [^:B X0. But the adverb ^:B wants to get
> two-dimensional, i.e., to apply each B to every pair of X1 and X2. How can
> I make J to apply the adverb one-to-one with the arguments?"
>
> Sincerely,
> Leigh
>
> ------------------------------------------------------------------------
>
> ----------------------------------------------------------------------
> 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