Except that _1 is a valid index value in J. I have written a cover for "iota" (in APL) that returned negative one for just the reason you give.
On Mon, Apr 23, 2012 at 5:33 PM, Henry Rich <henryhr...@nc.rr.com> wrote: > That convenience would also obtain (in J) if the 'not found' result were > _1; and then the 'not found' entry would be known in advance and we > wouldn't have to calculate it. > > Henry Rich > > On 4/23/2012 5:28 PM, Devon McCormick wrote: >> The convenience of index returning one more than the maximum is that >> it allows you to put your null (or other default) value at the end of >> your lookup vector, e.g. >> >> (Target,a:){~Source getIndex Target >> +-+---+-++ >> |a|bcd|e|| >> +-+---+-++ >> >> or maybe you want >> >> (Source,a:){~Source i. Target >> +-+-+---++ >> |e|a|bcd|| >> +-+-+---++ >> >> The last item is an empty vector because it's not found and that's the >> extra item we put at the end. >> >> On Mon, Apr 23, 2012 at 7:35 AM, Henry Rich<henryhr...@nc.rr.com> wrote: >>> Source =. 'a';'bcd';'e';'g' >>> Target =. 'e';'a';'bcd';'f' >>> getIndex =: i.~ NB. not e. >>> shouldReturn =. 1 2 0 4 NB. 'not found' for i. is #x >>> assert (Source getIndex Target)-:shouldReturn NB. -: not = >>> >>> Henry Rich >>> >>> On 4/23/2012 7:13 AM, Joe Bohart wrote: >>>> Hi J'ers, >>>> >>>> I'm trying to write a verb that will >>>> match the items in Source with Target >>>> and return the index of items in Target >>>> such that they are in the same order as >>>> Source with nulls (or the J way of handling nulls) >>>> if no match is found. >>>> >>>> This is what i have (and it's wrong): >>>> >>>> Source =. 'a';'bcd';'e';'g' >>>> Target =. 'e';'a';'bcd';'f' >>>> getIndex =: e. >>>> shouldReturn =. 1 2 0 null >>>> assert (Source getIndex Target)=shouldReturn >>>> >>>> In the forums I've found solution candidates,but >>>> haven't been able to apply them and am a bit lost with: >>>> I.@:E. and ;: >>>> >>>> The concept of expressing null or missing data in J I haven't >>>> found much info on. Where can i find more information on nulls. >>>> >>>> Much Thanks -Joe >>>> ---------------------------------------------------------------------- >>>> 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 -- Devon McCormick, CFA ^me^ at acm. org is my preferred e-mail ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm