Question

Pairwise combinations help

  • 23 August 2016
  • 2 replies
  • 9 views

Hi guys, I've been struggling for a couple of days with the following conundrum, hoping someone can offer some guidance.

I have an input containing one attribute (sa2_code) with 2000 region values in numeric format (example value: 101011002)

I have a second input containing one attribute (year) with roughly 20 different year values.

I would like to merge the two such that each region code is duplicated 20 times with each different year value. eg:

sa2_codeyear10101100219911010110021992......101011002201010101100319911010110031992......1010110032010

I've tried feature merger and joiner in loops but can't seem to get them working for this task. I find the

Any suggestions?

Thanks in advance.

Matt

 


2 replies

Userlevel 2
Badge +17

Hi @mattj84, I would use the FeatureMerger and ListExploder.

  • Send the features having region code to the Requestor port, send the features having year value to the Supplier port.
  • Set an identical value (e.g. "1") to Join On parameter for both Requestor and Supplier. The FeatureMerger with this setting performs unconditional merging.
  • Check "Generate List" and specify a list name (e.g. "_list") to the "List Name" parameter.
  • Then, connect a ListExploder to the Merged port to explode the output features on the "_list{}".

Alternatively, the InlineQuerier that performs CROSS JOIN may also be effective.

Userlevel 2
Badge +17

Hi @mattj84, I would use the FeatureMerger and ListExploder.

  • Send the features having region code to the Requestor port, send the features having year value to the Supplier port.
  • Set an identical value (e.g. "1") to Join On parameter for both Requestor and Supplier. The FeatureMerger with this setting performs unconditional merging.
  • Check "Generate List" and specify a list name (e.g. "_list") to the "List Name" parameter.
  • Then, connect a ListExploder to the Merged port to explode the output features on the "_list{}".

Alternatively, the InlineQuerier that performs CROSS JOIN may also be effective.

If the range of years is fixed (e.g. 20 years between 1991 and 2010), the Cloner could be a quick way.

 

Reply