I want to group-concatenate different elements within a cell and between two cells, not the whole cell as such. Let us say, I have
Row1-cell 1: A;B;C
Row2-cell 1: B;C
If I do a unique concatenate with count I will get:
But, what I want to get is:
How can I get there? Sorry, if I haven't seen an already existing post to that.
Try converting the string column to a collection column with the cell splitter first (output "as list" or "as set") and then aggregate this collection column.
Nice idea. But now, I stll get
It does not compare the elements with the cell lists.
Maybe not the shortest solution but it works:
- Cell Splitter (as new columns);
- Unpivoting: select variables of interest using the wildcard *_Arr* for Value Columns and no variable for Retained Columns;
- GroupBy: Groups = ColumnValues, Manual Aggregation = Count(ColumnNames);
- String Manipulation: join($ColumnValues$, " (", string($Count(ColumnNames)$), ")") and append as e.g. newColumnValues;
- GroupBy: Groups = nothing; Manual Aggregation = Concatenate(newColumnValues).
Thank you for helping.
Actually "A", "B", "C" is an example here. I have numbers which are converted to integers after Cell Splitter. I had to insert an "Number to String" node, otherwise I would get an error.
The next problem is now, that I have a whole matrix with lots of this rows and other columns to be retained. Your solution is fine for the small example above. I have to extend to a bigger matrix
Great, I got it running with my matrix. Just got to reconfigure the GroupBy node. Thank you very much!!! The good thing is: I can transfer/adapt this method to a similar task as well!