Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Hola
Trataré de simplificar a lo sumo para socavar la comprensión.
Tengo un rango de fechas, por ejemplo del 1 de enero al 1 de marzo.
Tengo una tabla con una columna DATA y otra columna X con un valor, por ejemplo: el 01 de marzo y 02 el valor de la columna X es 1, en 03 y 04 el valor de la columna x es 5, en 05 y 06 el valor vuelve a 1.
Necesito hacer un recuento de cuántos días se produjo el valor de X, pero con cada nuevo recuento no debo considerar el anterior, ejemplo en mi filtro seleccioné el día 2 (ese día el valor de X es 1), mi resultado será de 2 días, porque tengo el día 01 y 02 con el valor 1 , cuando selecciono el día 04 el valor de X será 5 entonces mi resultado será 2 porque tengo el valor 5 en el día 03 y 04, hasta ahora todo bien, el problema es cuando selecciono el día 06 (en ese día el valor de X es 1 de nuevo) entonces el valor que se está devolviendo es 4 porque también considera los días 01 y 02 , la necesidad es no contar más días 01 y 02 y contado sólo 05 y 06, porque entre el día 02 y 05 tenía diferentes valores de 1 a X.
Si alguien tiene alguna idea.
Solved! Go to Solution.
Hola, @Thcferreira
Primero debe crear una columna de índice en el editor de consultas
A continuación, puede intentar crear columnas calculadas como se muestra a continuación:
color flag =
VAR value1 =
'COVID'[TRANSMISSIBILIDADE]
RETURN
SWITCH (
TRUE (),
value1 > 1.5, "red",
value1 >= 1
&& value1 <= 1.5, "orange",
value1 < 1, "green"
)
ChangedStatue =
VAR pre =
CALCULATE (
VALUES ( COVID[color flag] ),
FILTER ( ALL ( COVID ), 'COVID'[Index] = EARLIER ( COVID[Index] ) - 1 )
)
RETURN
IF ( ISBLANK ( pre ) || pre = 'COVID'[color flag],"unchanged","changed" )
Counting days =
VAR _max =
CALCULATE (
MAX ( 'COVID'[Index] ),
FILTER (
'COVID',
'COVID'[Index] <= EARLIER ( 'COVID'[Index] )
&& 'COVID'[ChangedStatue] = "changed"
)
)
RETURN
IF ( ISBLANK ( _max ), 'COVID'[Index], 'COVID'[Index] - _max + 1 )
El resultado se mostrará como se muestra a continuación:
Para obtener más detalles, compruebe el archivo adjunto.
Saludos
Equipo de soporte de la comunidad _ Eason
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Lo siento, soy nuevo en powerbi
Traté de simplificar el ejemplo para una mejor comprensión, ahora estoy proporcionando más información, no pude adjuntar el pbix.
esta necesidad es un mapa que mida la transmisibilidad de cada estado durante la pandemia covid.
por lo que la necesidad de saber cuántos días cada estado permaneció en un cierto rango de transmisibilidad (este rango se define por la transmisibilidad) y realizar un seguimiento de los cambios en los rangos, por lo que no puedo acumular los valores, cada vez que cambio el rango para presentar un nuevo valor.
Aquí está un ejemplo de la tabla que estoy usando: Estado, transmisibilidad (Rt) y la fecha de una tabla llamada covid
Las reglas del rango son las siguientes:
transmissibilidade > 1,5 - rojo
transmissibilidade > 1 e <-1,5 – naranja
transmissibilidade <1 - verde
En 05/30/2020 cuando el rango está por encima de 1.5 tengo 54 días que me quedé en ese rango
En 05/31/2020 mi rango ya no está por encima de 1.5, pero <-1.5 por lo que cambió de color
El 06/14/2020 mi rango volvió a 1.5 y luego debe empezar a contar los días desde cero de nuevo, pero también está contando los días de ese primer período (05/30/2020 de la primera imagen).
Entonces, ¿cuál es la necesidad? Déjalo contar los días para cada pista, pero cuando hay un cambio de pista, por ejemplo me quedé 2 días en el rango> 1.5 entonces me mudé al rango <-1.5 y luego volví al rango> 1.5 Debo contar esos 2 días que me había quedado en este rango en el conteo.
@Thcferreira, parece más acumulativo
Ejemplo
Ventas de Cumm: CALCULATE(SUM(Sales[Sales Amount]),filter(allselected(date),date[date] <-maxx(date,date[date])))
Ventas de Cumm: CALCULATE(SUM(Sales[Sales Amount]),filter(allselected(date),date[date] <-max(Sales[Sales Date]))
¿Puede compartir datos de ejemplo y salida de ejemplo en formato de tabla? O una muestra de pbix después de eliminar datos confidenciales.
Proporcione sus comentarios y consejos para nuevos videos
Tutorial Series Dax Vs SQL Direct Query PBI Consejos
Apreciamos tus Felicitaciones.
¿Es posible compartir datos de ejemplo. La explicación no está dando el contexto .
Proud to be a Super User!
Hola, @Thcferreira
Primero debe crear una columna de índice en el editor de consultas
A continuación, puede intentar crear columnas calculadas como se muestra a continuación:
color flag =
VAR value1 =
'COVID'[TRANSMISSIBILIDADE]
RETURN
SWITCH (
TRUE (),
value1 > 1.5, "red",
value1 >= 1
&& value1 <= 1.5, "orange",
value1 < 1, "green"
)
ChangedStatue =
VAR pre =
CALCULATE (
VALUES ( COVID[color flag] ),
FILTER ( ALL ( COVID ), 'COVID'[Index] = EARLIER ( COVID[Index] ) - 1 )
)
RETURN
IF ( ISBLANK ( pre ) || pre = 'COVID'[color flag],"unchanged","changed" )
Counting days =
VAR _max =
CALCULATE (
MAX ( 'COVID'[Index] ),
FILTER (
'COVID',
'COVID'[Index] <= EARLIER ( 'COVID'[Index] )
&& 'COVID'[ChangedStatue] = "changed"
)
)
RETURN
IF ( ISBLANK ( _max ), 'COVID'[Index], 'COVID'[Index] - _max + 1 )
El resultado se mostrará como se muestra a continuación:
Para obtener más detalles, compruebe el archivo adjunto.
Saludos
Equipo de soporte de la comunidad _ Eason
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Gracias, ahora tengo problemas para calcular los días.
Hola, @Thcferreira
La fórmula que proporcioné es una columna calculada, en lugar de una medida...
Puede comprobarlo en mi archivo pbix adjunto.
Saludos
Equipo de soporte de la comunidad _ Eason
Olá, depois eu percebi o meu equivoco.
eu consegui resolver usando uma medida, ficou da seguinte forma:
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
1 | |
1 | |
1 | |
1 | |
1 |