Skip to main content

Hey there,

Building on the question in this link: https://knowledge.safe.com/questions/70747/finding-the-largest-value-through-multiple-attribu.html

I want to find the attribute that the max value in the function @max(Value(A), Value(B), Value(C) belonged to. See image below for example:

Is there any function in FME that could help me with this? As the title implies, I thought something like @argmax(...) would exist, but I have not found what I am looking for.

Thanks in advance

One possible way using an attribute exploder

Find_max_across_attributes.fmwt


You could do it with a conditional in an AttributeCreator/Manager.

This does evaluate the max twice, alternative you could create a temp attribute storing the max, and have the conditional check if A = maxVal etc.


This workflow could also be possible. The ListElementFilter is a custom transformer from the FME Hub.


This workflow could also be possible. The ListElementFilter is a custom transformer from the FME Hub.

Interesting use of the AttributeExploder. It would be nice if there was a parameter to exclude hidden fme/reader attributes


This workflow could also be possible. The ListElementFilter is a custom transformer from the FME Hub.

I hope "Selected Attributes" parameter will be added to the AttributeExploder, so that the user can select attributes to be exploded or NOT to be exploded optionally.

See also this Idea.

Option to Select Attributes that should not be Exploded in AttributeExploder


Reply