Forum Discussion
Power BI DAX
Hola, ¿alguien podría ayudarme este DAX?
| Fecha | Horas | Uso | Ocupación |
| 27-feb | 2 | 5 | 1 |
| 27-feb | 4 | 7 | 2 |
| 27-feb | 7 | 8 | 3 |
| 27-feb | 3 | 3 | 1 |
| 27-feb | 9 | 2 | 1 |
| 27-feb | 5 | 4 | 2 |
| 27-feb | 7 | 1 | 6 |
| 27-feb | 3 | 6 | 5 |
| 27-feb | 8 | 1 | 3 |
| 27-feb | 10 | 3 | 2 |
| 26-feb | 12 | 4 | 1 |
| 26-feb | 14 | 6 | 1 |
| 26-feb | 6 | 1 | 4 |
| 26-feb | 8 | 1 | 6 |
| 26-feb | 10 | 2 | 4 |
| 26-feb | 1 | 4 | 2 |
| 26-feb | 3 | 3 | 1 |
| 26-feb | 13 | 7 | 3 |
Basándome en estos datos, necesito escribir un DAX para seleccionar las 4 veces más altas para cada día cuando el uso + ocupación es alto. ¿Alguien podría ayudar?
En ella @Learner_SG ,
Entiendo. Aquí está mi solución.
1.Cree una medida de comprobación.
Check = IF(MAX('Sheet4'[Parsed_Date])=TODAY()-7,1)Coloque la medida en el filtro visual y deje que el valor sea 1.
2. Crea una medida de rango.
Rank = RANKX ( FILTER ( ALL ( 'Sheet4' ), 'Sheet4'[Parsed_Date] = TODAY () - 7 ), CALCULATE ( SUM ( 'Sheet4'[WC Water Consumption(mL)] ) ), , DESC, DENSE )Coloque la medida en el filtro visual y deje que el valor < = 4, obtenga el resultado correcto.
Adjunto mi muestra a continuación como referencia.
Saludos
Equipo de apoyo a la comunidad _ kalyjSi esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
24 Replies
- Syndicate_Admin
Administrator
Hola
¿Puedes probar a continuación medir y usarlo como filtro visual, por favor?
rango =RANKX(TODOSEXCEPTO('Tabla',«Tabla»[Fecha]),[usage_occ],,DESC,Saltarse)- Syndicate_Admin
Administrator
Hola @coskuersanli , todavía no puedo obtener la solución. En realidad, había compartido los datos para otra consulta con usted. Si tienes tiempo, podrías guiarme con el DAX.
https://drive.google.com/file/d/1rgIn7gN7Kuux8trVMtPIj8qxxulUVYLL/view?usp=sharing.
- Syndicate_Admin
Administrator
En ella @Learner_SG ,
Las fechas y horas son únicas en el archivo de muestra. Puedo ayudarte si me envías algunos datos como en tu primer post 🙂
- Syndicate_Admin
Administrator
En ella @Learner_SG ,
¿Te refieres a mostrar los 4 tiempos más altos en los últimos 7 días? Si este es el caso, aquí está mi solución.
1.Cree una tabla de fechas.
Date = CALENDAR(DATE(2022,1,1),TODAY())2.Haga una relación entre las dos tablas, tenga en cuenta que la fecha analizada debe ser Tipo de fecha.
3.Coloque la columna de fecha en una segmentación de datos, seleccione Fecha relativa>Última 7 días.
4.In el filtro visual, coloque consumo de agua wc en el cuadro debajo de "Por valor" y seleccione Top 4.
Siempre obtendrá los 4 valores principales en los últimos 7 días.
Adjunto mi muestra a continuación como referencia.
Saludos
Equipo de apoyo a la comunidad _ kalyjSi esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
- Syndicate_Admin
Administrator
Hola @v-kalyj-msft , gracias por la explicación detallada y la solución. De hecho mi requisito es que , necesito mostrar en la tabla , datos anteriores del 7º día. eso significa que, si muestro el tablero hoy (viernes), debería mostrarme la hora más alta de los 4 del viernes pasado cuando el uso + ocupación es alta y cambiará cada día. Espero que esté claro ahora. Lo siento, si mi redacción anterior de la oración causó confusión. ¿Podría guiarme en esto?
- Syndicate_Admin
Administrator
En ella @Learner_SG ,
Entiendo. Aquí está mi solución.
1.Cree una medida de comprobación.
Check = IF(MAX('Sheet4'[Parsed_Date])=TODAY()-7,1)Coloque la medida en el filtro visual y deje que el valor sea 1.
2. Crea una medida de rango.
Rank = RANKX ( FILTER ( ALL ( 'Sheet4' ), 'Sheet4'[Parsed_Date] = TODAY () - 7 ), CALCULATE ( SUM ( 'Sheet4'[WC Water Consumption(mL)] ) ), , DESC, DENSE )Coloque la medida en el filtro visual y deje que el valor < = 4, obtenga el resultado correcto.
Adjunto mi muestra a continuación como referencia.
Saludos
Equipo de apoyo a la comunidad _ kalyjSi esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.