Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Syndicate_Admin
Administrator
Administrator

Media móvil dinámica por día basada en múltiples valores

Hola a todos

Estoy tratando de lograr una media móvil por día con un ajuste dinámico. Mi problema es que tengo múltiples valores por día y parece que estoy luchando con eso. Ya he hecho una media móvil basada en valores individuales, pero también necesito la basada en el día.

Actualmente lo que tengo es una tabla ('TBUData') como esta:

Josh_M_4-1686556243957.png

El promedio móvil funciona cuando son días individuales, pero cuando lo varío a más de uno, no parece estar haciendo el cálculo correcto (4 días configurados en parámetro):

Josh_M_5-1686556265015.png

Mi cálculo de medida es este:

Moving Avg Per Day = 
//Selecting the date in the range
VAR _LastDate =
MAX (TBUData[Date])
//Defining the duration to be considered for average calculation(k)
VAR _Duration = [Parameter By Day]
//Filtering the Calendar Table for the defined range
VAR _CalculationPeriod =
FILTER (
ALL ( TBUData),
AND (
TBUData[Date] > _LastDate - _Duration, 
TBUData[Date] <= _LastDate 
)
)
//Calculating the Moving Average
VAR _MovingAverage =
IF (
COUNTROWS ( _CalculationPeriod ) >= _Duration, 
CALCULATE (
AVERAGEX(TBUData,[M2Average]), 
_CalculationPeriod
)
)
RETURN
_MovingAverage

Para las relaciones, también tengo la tabla de fechas maestra, aunque solo estoy tratando de que funcione con la tabla actual por ahora:

Josh_M_3-1686556148788.png

Cualquier ayuda sería apreciada

2 REPLIES 2
Syndicate_Admin
Administrator
Administrator

Hola @amitchandak, lo he intentado así varias veces, pero solo se muestra en blanco a pesar de que sé que la relación funciona a través de otras tramas.

Syndicate_Admin
Administrator
Administrator

@Josh_M , Pruebe una medida como con la ayuda de la tabla de fechas

4 Día Promedio = CALCULATE(AverageX(Values('Date'[Date]),calculate(Sum('Table'[Value])))
,DATESINPERIOD('Date'[Date ],MAX('Date'[Date ]),-4,DAY))

Helpful resources

Announcements
LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.