I'd have used ;:inv instead of ;:^:_1 like EelVex used (same operation, but slightly shorter and I think slightly easier to read).
Generally, ;:inv is perfect for taking a boxed list of strings and getting a space separated string. Commas are a bit more work (and if you want the last comma to be the word 'and' with spaces separating it from adjacent words, and a space after each comma), that's a bit more work... -- Raul On Fri, Mar 4, 2016 at 11:20 AM, Skip Cave <[email protected]> wrote: > Both Henry & > > Raul came up with > what is > likely the shortest solution: > > (~.@[ ,. [/.)/ list > > I like Henry's second approach, even though it is a bit longer: > > (~.@[ ,. <@;/.)/ list > > ┌────┬─────────┐ > > │bird│1 8 14 │ > > ├────┼─────────┤ > > │cow │2 3 5 6 7│ > > ├────┼─────────┤ > > │dog │4 9 11 13│ > > ├────┼─────────┤ > > │cat │10 │ > > ├────┼─────────┤ > > │pig │12 15 │ > > └────┴─────────┘ > > However, what if the tag IDs were text, instead of numerical? > > animals =: > 'bird';'cow';'cow';'dog';'cow';'cow';'cow';'bird';'dog';'cat';'dog';'pig';'dog';'bird';'pig' > ids > =:'one';'two';'three';'four';'five';'six';'seven';'eight';'nine';'ten';'eleven';'twelve';'thirteen';'fourteen';'fifteen' > > list2 =. animals,:ids > > > Using Henry's second verb: > > > (~.@[ ,. <@;/.)/ list2 > > ┌────┬──────────────────────┐ > > │bird│oneeightfourteen │ > > ├────┼──────────────────────┤ > > │cow │twothreefivesixseven │ > > ├────┼──────────────────────┤ > > │dog │fournineeleventhirteen│ > > ├────┼──────────────────────┤ > > │cat │ten │ > > ├────┼──────────────────────┤ > > │pig │twelvefifteen │ > > └────┴──────────────────────┘ > > > Can you separate the IDs with spaces (or commas) between the IDs? > > Modifying the original list by inserting spaces isn't allowed. > > Skip Cave > > ᐧ > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
