J_L
Hola equipo,
Soy un novato y espero obtener ayuda de DAX para una medida que estoy tratando de agregar. ¡He buscado muchos tutoriales en foros y youtube sin suerte definitiva!
Básicamente, en cada fecha, quiero calcular el promedio móvil de las ventas para esa fecha, 7 días antes y después, para un total de 14 días. Consulte mi cálculo promedio básico de Excel a continuación para obtener una maqueta con los resultados esperados en la columna C. La celda C23 muestra mi fórmula de Excel para su información.
Texto a continuación:
FECHA | VENTAS |
1 ° de julio | 22 |
2 de julio | 12 |
3 de julio | 31 |
4 de julio | 43 |
5 de julio | 25 |
6 de julio | 62 |
7 de julio | 23 |
8 de julio | 34 |
9 de julio | 24 |
10 de julio | 55 |
11 de julio | 32 |
12 de julio | 31 |
13 de julio | 48 |
14 de julio | 43 |
15 de julio | 23 |
16 de julio | 31 |
17 de julio | 35 |
18 de julio | 55 |
19 de julio | 34 |
20 de julio | 63 |
21 de julio | 14 |
22 de julio | 43 |
23 de julio | 35 |
24 de julio | 75 |
25 de julio | 46 |
26 de julio | 45 |
27 de julio | 36 |
28 de julio | 23 |
29 de julio | 19 |
Para que lo sepas, he intentado usar medidas rápidas sin embargo me sale ERROR(«Las medidas rápidas de inteligencia de tiempo solo se pueden agrupar o filtrar por la columna de fecha principal o la jerarquía de fechas proporcionada por Power BI»). en el calc. y me aseguré de que la inteligencia de fecha/hora automática se haya marcado en las opciones para la carga de datos y también marqué mi tabla como fecha.
su ayuda será muy apreciada 🙂
Gracias, JL
Ashish_Mathur
Hola,
Puede descargar mi archivo PBI desde aquí.
Espero que esto ayude.
parar2k
@J_L intenta seguir la medida
Avg 14 Days = VAR __startDate = CALCULATE( MIN( Table1[Date] ), DATEADD( Table1[Date], -6, DAY ) ) VAR __endDate = CALCULATE( MAX( Table1[Date] ), DATEADD( Table1[Date], 7, DAY ) ) RETURN CALCULATE( AVERAGE( Table1[SALES] ), DATESBETWEEN( Table1[Date], __startDate, __endDate ) )
parar2k
@J_L intenta seguir la medida
Avg 14 Days = VAR __startDate = CALCULATE( MIN( Table1[Date] ), DATEADD( Table1[Date], -6, DAY ) ) VAR __endDate = CALCULATE( MAX( Table1[Date] ), DATEADD( Table1[Date], 7, DAY ) ) RETURN CALCULATE( AVERAGE( Table1[SALES] ), DATESBETWEEN( Table1[Date], __startDate, __endDate ) )
J_L
En respuesta a parar2k
Hola @parry2k,
¡Muchas gracias por su ayuda! Muy apreciado
Definitivamente respondió a mi pregunta, sin embargo, me acabo de dar cuenta de que tengo otro desafío, ya que me gustaría poder calcular esto en promedio para un día de la semana (DOW), es decir, agregué un cortador DOW lunes, martes, miércoles , etc… en mi Tablero y quiero poder calcular este promedio en todos los ‘martes’, por ejemplo… Estoy seguro de que esto agrega complejidad adicional y me estoy pateando ahora por no incluir esto en el original ¡¡¡correo!!!
Gracias, JL
parar2k
En respuesta a J_L
@J_L quiere decir que si corta por DOW, desea calcular el promedio de 14 días para ese día de la semana, ¿correcto?
J_L
En respuesta a parar2k
Hola @parry2k
Sí, entonces me gustaría poder filtrar por DOW martes (por ejemplo) y espero que el promedio para el 5/02/2019 a continuación se calcule para incluir datos de la fecha para cada uno de los martes a continuación:
25/12/2018 | martes |
1/01/2019 | martes |
8/01/2019 | martes |
15/01/2019 | martes |
22/01/2019 | martes |
29/01/2019 | martes |
02/05/2019 | martes |
02/12/2019 | martes |
19/02/2019 | martes |
26/02/2019 | martes |
03/05/2019 | martes |
03/12/2019 | martes |
19/03/2019 | martes |
26/03/2019 | martes |
Espero que esto tenga sentido…
Gracias, JL
Ashish_Mathur
Hola,
Puede descargar mi archivo PBI desde aquí.
Espero que esto ayude.