Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and a 50 percent discount on exams.
Get startedEarn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.
Que tal amigos, como estan?
Neceito de su ayuda.
Quiero sacar el promedio movil de una columna en funcion de un periodo de tiempo (horas).
En la siguiente imagen muestro los resultados que deseo obtener en la columna de color naranja, el promedio lo saque considerando 3 horas.
Podrian ayudarme, actualmente tengo este codigo (muy lento por cierto, se puede optimizar?) pero cuando sustituyo el 3 por el 0, hay filas que sigue haciendo promedio con el anterior.
Saludos, gracias por leer mi consulta!
🙃
DATE | ID | DIST | Average |
31/03/2022 13:00 | S-100 | 35.37 | |
31/03/2022 14:00 | S-100 | 35.14 | |
31/03/2022 15:00 | S-100 | 34.71 | |
31/03/2022 16:00 | S-100 | 34.26 | 34.87 |
31/03/2022 17:00 | S-100 | 33.90 | 34.50 |
31/03/2022 18:00 | S-100 | 33.72 | 34.15 |
31/03/2022 19:00 | S-100 | 33.66 | 33.89 |
31/03/2022 20:00 | S-100 | 33.67 | 33.74 |
31/03/2022 21:00 | S-100 | 33.80 | 33.71 |
31/03/2022 22:00 | S-100 | 33.89 | 33.76 |
31/03/2022 23:00 | S-100 | 34.05 | 33.85 |
01/04/2022 00:00 | S-100 | 34.17 | 33.98 |
01/04/2022 01:00 | S-100 | 33.43 | 33.89 |
01/04/2022 02:00 | S-100 | 34.52 | 34.04 |
31/03/2022 13:00 | S-100 | 35.09 | 34.30 |
31/03/2022 14:00 | S-100 | 35.94 | 34.75 |
31/03/2022 15:00 | S-100 | 36.97 | 35.63 |
31/03/2022 16:00 | S-100 | 38.09 | 36.52 |
31/03/2022 17:00 | S-100 | 38.76 | 37.44 |
31/03/2022 18:00 | S-100 | 39.35 | 38.29 |
Solved! Go to Solution.
Puedo tener datos de un ID por minuto, hora etc. El anterior es un ejemplo simplificado.
Generalmente, siempre estan ordenados los datos, sin embargo, en ocasiones junto base de datos y no quedan ordenados.
El anterior codigo me promediaba todo lo que seleccionaba en un segmentador, al final pude encontrar una solución, que es la siguiente:
-----------------------------------------------------------------------------------------------------------------
M_DIST =
VAR currDate =
MAX (T_BD[DATE])
RETURN
CALCULATE (
PROMEDIO (T_BD[Dist]),
FILTER (
TODO SELECCIONADO (T_BD),
T_BD[DATE] <= currDate
&& DATEDIFF (T_BD[DATE], currDate, HOUR) < = 3
&& T_BD[ID] = MIN ( T_BD[ID] )
)
)
----------------------------------------------------------------------------------------------
Saludos!
Puedo tener datos de un ID por minuto, hora etc. El anterior es un ejemplo simplificado.
Generalmente, siempre estan ordenados los datos, sin embargo, en ocasiones junto base de datos y no quedan ordenados.
El anterior codigo me promediaba todo lo que seleccionaba en un segmentador, al final pude encontrar una solución, que es la siguiente:
-----------------------------------------------------------------------------------------------------------------
M_DIST =
VAR currDate =
MAX (T_BD[DATE])
RETURN
CALCULATE (
PROMEDIO (T_BD[Dist]),
FILTER (
TODO SELECCIONADO (T_BD),
T_BD[DATE] <= currDate
&& DATEDIFF (T_BD[DATE], currDate, HOUR) < = 3
&& T_BD[ID] = MIN ( T_BD[ID] )
)
)
----------------------------------------------------------------------------------------------
Saludos!
Any particular reason why your sample data is repeating?
If your data come already presorted and is always one hour apart then you could add a straight Power Query index. You can also convert your date column into a numeric column and then subtract 1/8th .
User | Count |
---|---|
87 | |
72 | |
68 | |
63 | |
54 |
User | Count |
---|---|
98 | |
89 | |
74 | |
67 | |
62 |