I have an input number.
E.g. : 0.75
I need to identify what number is the input closest to based on a given list ( 0.083, 0.25, 0.5 )
Is there a built-in Coda function for this ? In the example above, the function should return 0.5
I have an input number.
E.g. : 0.75
I need to identify what number is the input closest to based on a given list ( 0.083, 0.25, 0.5 )
Is there a built-in Coda function for this ? In the example above, the function should return 0.5
Built-in no, but you can compose a formula for this.
If your list is MyList
and your input is Input
, it could be like this:
MyList.Nth(
Sequence(1, MyList.Count()).FormulaMap(
List(AbsoluteValue(MyList.Nth(CurrentValue) - Input), CurrentValue)
).Sort(true).First().Last()
)
Explanation:
Sequence(1, MyList.Count())
iterates not on the elements of the list themselves, but on indices 1, 2, 3 etc.
Hence MyList.Nth(CurrentValue)
to then actually get the value at that index.
For each index, compose a list of two elements: the absolute distance between numbers and the index of the number that resulted in that difference.
Sort(true) will then sort those lists, and since the first element is the distance, it will sort it properly, ascending.
All that’s left is to take the first (smallest) list, extract its second element (the index) and pass it to myList.Nth()
to get the actual number.
This works for me :
thisRow.[Dummy 2].Nth(WithName(thisRow.[Dummy 2].FormulaMap(AbsoluteValue(CurrentValue-.75)).Min(), Minimum, thisRow.[Dummy 2].FormulaMap(AbsoluteValue(CurrentValue-.75)).Find(Minimum)))
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.