Forum Discussion

heejinyune's avatar
heejinyune
Frequent Visitor
3 years ago
Solved

Find the nearest value within a month

Hello community! 

 

Is anyone familiar with writing the Dax Programming to find the nearest (closest ) value in the table?

 

For example, My table is like this:

 

 

And I want to find the nearest Model built time value with 1 month average built time (in this case, today date is 2022/11/16 so 

(213 + 444 + 532 + 111 / 4 ) = 325 ) 

so the nearest value of 325 in this table should be 213 (A125) not 345 (A124) as that model not in a past month from current date.

Therefore, how do i return 213 using the dax programming?

 

Thank you so much for your help! 

  • Hi, heejinyune 

     

    You can try the following methods.
    Column:

    Month = MONTH([Model built Date])

    Measure:

    Nearest Average = 
     CALCULATE(AVERAGE('Table'[Model built time]),FILTER(ALL('Table'),[Month]=MONTH(TODAY())))

    Difference = ABS(SUM('Table'[Model built time])-[Nearest Average])
    Nearest Value = 
    Var _mindiff=MINX(FILTER(ALL('Table'),[Month]=MONTH(TODAY())),[Difference])
    Return
    IF([Difference]=_mindiff,SUM('Table'[Model built time]))

    Is this the result you expect?

     

    Best Regards,

    Community Support Team _Charlotte

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

1 Reply

  • v-zhangti's avatar
    v-zhangti
    Icon for Community Support rankCommunity Support

    Hi, heejinyune 

     

    You can try the following methods.
    Column:

    Month = MONTH([Model built Date])

    Measure:

    Nearest Average = 
     CALCULATE(AVERAGE('Table'[Model built time]),FILTER(ALL('Table'),[Month]=MONTH(TODAY())))

    Difference = ABS(SUM('Table'[Model built time])-[Nearest Average])
    Nearest Value = 
    Var _mindiff=MINX(FILTER(ALL('Table'),[Month]=MONTH(TODAY())),[Difference])
    Return
    IF([Difference]=_mindiff,SUM('Table'[Model built time]))

    Is this the result you expect?

     

    Best Regards,

    Community Support Team _Charlotte

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.