the same length, but the total length of items is the same. Consider the following flat lists (short for convinience):
L1: A B C D E F G H and L2: 0 0 0 1 2 2 2 3. L1 could be a list of strings or numbers, L2 defines a category. The end result should be {0;0} A {0;1} B {0;2} C {1;0} D {2;0} E {2;1} F {2;2} G {3;0} H
Using L2 getting the target paths, or even the index where the first list should be splitted, is fairly simple.
However, I just can't find a component that can divide L1 accordingly. In order it to be useful for longer lists and larger set of categories, the solution should not rely on an array of components for each branch.…
owing:
{0}0. d1. e2. f
3. g4. h5. i
{1}0. a1. b2. c
3. g4. h5. i
{2}0. a1. b2. c
3. e
4. f
5. g
Thought maybe I could use relative Item but I cant figure out how to do an offset that includes multiples.
…
Appreciate you can kindly help to see if my csv file is missing something to be read:
1. gh file:
https://sites.google.com/site/oatcracker2013/home/files/error_read_eplus_csv.gh?attredirects=0&d=1
2. my .csv file
https://sites.google.com/site/oatcracker2013/home/files/A01_c_new.csv?attredirects=0&d=1
3. my .eio file
https://sites.google.com/site/oatcracker2013/home/files/A01_c_new.eio?attredirects=0&d=1
Much obliged!…
lengths, with a set of possible algorithms to perform the matching.
Stream 1: {0;0;0} {0;0;1} {0;1;0} {0;1;1} {0;1;2}
Stream 2: {0;0} {0;1}
"trim end" and "trim start" matching could be applied between the paths - applying either an {A;B;C} -> {A;B} mapping to stream one, or {A;B;C} -> {A;B}.
In a more complex situation:
Stream 1: {0;0;0} {0;0;1} {0;1;0} {0;1;1} {0;2;0} {0;2;1}{0;2;2}{0;2;3}
Stream 2: {0} {1} {2}
Stream 3: {0;0;0;0} {0;0;1;0}{0;0;1;1} {0;0;1;2} {0;0;2;0}
This could conceivably include all kinds of ambiguous cases, but here's a stab at an algorithm that might sort them appropriately most of the time:
Find the highest value for each path index in each stream - so 1 has {0;2;3}, 2 has {2} and 3 has {0;0;2;2}
Find the shortest path length N across all paths - in this case N=1
find the highest (leftmost) shared pattern of N sequential values across all paths (here just {2})
Simplify all streams to the matching set of indices. (Stream 1: {A;B;C} -> {B}, Stream 2 {A} -> {A}, Stream 3: {A;B;C;D} -> {C})
Not sure if this makes sense - (either because I've explained it poorly or because the idea itself is bad.) But hopefully at least the goal is clear - to find a most-of-the-time routine to reconcile paths of different lengths according to their overlap. …
, E, H, C, F, I
So instead of Weave component, you might want to use the "Merge 03" component. It merges 3 data lists into one sequentially. For the example above, you would have:
A, B, C, D, E, F, G, H, I
Hope this help.…
Added by June-Hao Hou at 7:30am on December 4, 2010