<html><head></head><body bgcolor="#FFFFFF"><div>Arun,</div><div><br></div><div>If the new boolean is false, the result would be the same as without it and would be equal to current behavior of d[i][, j]. If it's true, it will only have an effect if i is a join (I think each.i= fits slightly better for this description than .join=) - this will replicate current underlying behavior. If you think the cross-apply is something that could work not just for i being a data-table but other things as well, then it would make perfect sense to implement that action too when the bool is true.</div>
<div><br>On Apr 30, 2013, at 2:58 AM, Arunkumar Srinivasan <<a href="mailto:aragorn168b@gmail.com">aragorn168b@gmail.com</a>> wrote:<br><br></div><div></div><blockquote type="cite"><div>
                <div>(The earlier message was too long and was rejected.)
                </div><div><div>So, from the discussion so far, I see that Matthew is nice enough to implement `.JOIN` or `cross.apply`. I've a couple of questions. Suppose,</div><div><br></div><div>    DT1 <- data.table(x=c(1,1,2,3,3), y=1:5, z=6:10)</div>
<div>    setkey(DT1, "x")</div><div>    DT2 <- data.table(x=1)</div><div>    DT1[DT2, y, .JOIN=TRUE] # I guess the syntax is something like this. I expect here the same output as current DT1[DT2, y]</div><div>
<br></div><div>The above syntax seems "okay". But my first question is what is `.JOIN=FALSE` supposed to do under these two circumstances? Suppose, </div><div><br></div><div>    DT1 <- data.table(x=c(1,1,2,3,3), y=1:5, z=6:10)</div>
<div>    setkey(DT1, "x")</div><div>    DT2 <- data.table(x=c(1,2,1), w=c(11:13))</div><div>    # what's the output supposed to be for?</div><div>    DT1[DT2, y, .JOIN=FALSE]</div><div>    DT1[DT2, .JOIN = FALSE]</div>
<div><br></div><div>Depending on this I'd have to think about `drop = TRUE/FALSE`. Also, how does it work with `subset`? </div><div><br></div><div>    DT1[x %in% c(1,2,1), y, .JOIN=TRUE] # .JOIN is ignored?</div><div>
<span class="Apple-tab-span" style="white-space:pre"> </span></div><div>Is this supposed to also do a "cross-apply" on the logical subset? I guess not. So, .JOIN is an "extra" parameter that comes into play *only* when `i` is a `data.table`? </div>
<div><br></div><div>I'd love to have some replies to these questions for me to take a stance on `.JOIN`. Thank you.</div><div><br></div><div>Best,</div><div>Arun.</div></div><div><br></div>
                 
                <p style="color:#a0a0a8"><br></p>
            </div></blockquote></body></html>