Forum Discussion
Moving Range DAX (subtract previous row values from earlier DateTime)
- 8 years ago
Try this MEASURE
Moving Range = VAR EarlierTime = CALCULATE ( MAX ( data1[TimeSPC] ), FILTER ( ALLSELECTED ( data1[TimeSPC] ), data1[TimeSPC] < SELECTEDVALUE ( data1[TimeSPC] ) ) ) VAR EarlierMeasureValue = CALCULATE ( SUM ( data1[MeasureValue] ), data1[TimeSPC] = EarlierTime ) RETURN ABS ( EarlierMeasureValue - SUM ( data1[MeasureValue] ) ) - 8 years ago
Try this MEASURE
Moving Range =
VAR EarlierTime =
CALCULATE (
MAX ( data1[TimeSPC] ),
FILTER (
ALLSELECTED ( data1[TimeSPC] ),
data1[TimeSPC] < SELECTEDVALUE ( data1[TimeSPC] )
)
)
VAR EarlierMeasureValue =
CALCULATE ( SUM ( data1[MeasureValue] ), data1[TimeSPC] = EarlierTime )
RETURN
ABS ( EarlierMeasureValue - SUM ( data1[MeasureValue] ) )- vincentakatoh8 years ago
Helper IV
Hi Zubair_Muhammad,
Thanks!
One more question, can advise the DAX to calculate "Average of Moving Range (MRbar)"?
My end goal is to calculate the Cpk of the specific MeasureValue. Cpk= MRbar/1.128.
- vincentakatoh8 years ago
Helper IV
Hi Zubair_Muhammad,
1) Wrap a "ISBLANK" around MovingRange, such that the Moving Range for 1st row is blank().
MovingRange = IF(ISBLANK(data1[EarlierTime]);blank();( VAR EarlierTime = CALCULATE ( MAX ( data1[TimeSPC] ); FILTER ( ALLSELECTED ( data1[TimeSPC] ); data1[TimeSPC] < SELECTEDVALUE ( data1[TimeSPC] ) ) ) VAR EarlierMeasureValue = CALCULATE ( SUM ( data1[MeasureValue] ); data1[TimeSPC] = EarlierTime ) RETURN ABS ( EarlierMeasureValue - SUM ( data1[MeasureValue] ) ) ))
2) Que: Can advise the DAX for Average of Moving Range (ie. MRbar)?
3) To correct myself, my goal is to calculate the sigma value = MRbar/1.128 (not Cpk and 1.128 is a constant).
https://1drv.ms/u/s!ArjVwEnHONXNghx02BIdTGGtSrlZ
- Zubair_Muhammad8 years ago
Community Champion
Sorry.... i had to go out...Just returned
So average is it a one single figure or is it computed across days??
- Anonymous7 years agoNot applicable
Hello Zubair_Muhammad ,
Can you please explain the above dax. this is formula not working in my context.
- GDUb7 years ago
Advocate I
Nice. I'm trying to implement this in Excel 2016 (16.0.4849.1000) 64 bit, but it appears that the "ALLSELECTED" function is not available in this version of DAX. Any suggestions for a workaround/alternate formula?
Thanks!
- GDUb7 years ago
Advocate I
Oops, correction. It is the "SELECTEDVALUE" function that is missing from Excel DAX.
Moving Range = VAR EarlierTime = CALCULATE ( MAX ( data1[TimeSPC] ), FILTER ( ALLSELECTED ( data1[TimeSPC] ), data1[TimeSPC] < SELECTEDVALUE ( data1[TimeSPC] ) ) ) VAR EarlierMeasureValue = CALCULATE ( SUM ( data1[MeasureValue] ), data1[TimeSPC] = EarlierTime ) RETURN ABS ( EarlierMeasureValue - SUM ( data1[MeasureValue] ) )