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

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.

Reply
Syndicate_Admin
Administrator
Administrator

Comparar las distribuciones de dos intervalos de tiempo

Hola

Tengo una tabla que contiene los parámetros de las máquinas y las fechas en que se comprobaron los parámetros.

Los nombres de parámetro se encuentran en la columna "Parámetro", valores de parámetro – "Valor", fechas – "Fecha".

Tengo que tomar dos períodos de tiempo (Base y Prueba) y compararlos. Necesito comparar sus distribuciones visualmente usando un histograma / trama de violín / diagrama de caja / o cualquier otro gráfico que muestre la distribución de los datos. Además de eso, a menos que sea proporcionado por el gráfico, tengo que calcular estadísticas como min, max, mean, avg, std, y algunas estadísticas personalizadas basándose en los parámetros.

El informe se va a publicar en el servidor PBI local, por lo que el usuario final no podrá cambiar los parámetros de consulta.

Lo he intentado dos soluciones, pero no funcionaron para mí.

1) Primera solución

Creo dos segmentaciones de fecha y mediciones que toman la primera y la última fecha del intervalo.

Ejemplo de la medición que toma el último intervalo:

SelectedDateEndBaseline =

CÁLCULO DE DEVOLUCIÓN (

MAX('MainTable'[Fecha]),

TODOS SELECCIONADOS ()

)

Para el intervalo de inicio hago lo mismo, pero tomo MIN('MainTable'[Fecha]).

Al final tengo 4 mediciones que contienen mis fechas:

  • SelectedDateStartBaseline
  • SelectedDateEndBaseline
  • SelectedDateStartTest
  • SelectedDateEndTest

A continuación, creo una columna calculada que devuelve "Condición base" o "Condición de prueba" basándose en el intervalo de tiempo:

ConditionColumn = IF(

Y (

[Fecha]>=[SelectedDateStartBaseline],

[Fecha]<=[SelectedDateEndBaseline]),"Condición base"

IF(

Y (

[Fecha]>=[SelectedDateStartTest],

[Fecha]<=[SelectedDateEndTest]),"Condición de prueba"))

Después de eso, creo una trama de violín y uso "ConditionColumn" en el campo "Categoría". El problema es que la columna calculada no se actualiza cuando cambio las fechas en las segmentaciones de datos.

2) Segunda solución

Creo una tabla "Fecha" independiente para el intervalo base:

Fecha =

VAR MinYear = AÑO ( MIN ( MainTable[Fecha] ) )

VAR MaxYear = AÑO ( MAX ( MainTable[Fecha]) )

devolución

ADDCOLUMNS (

FILTRO (

CALENDARAUTO( ),

Y ( AÑO ( [Fecha] ) >= MinYear, AÑO ( [Fecha] ) <= MaxYear )

),

"Año calendario", "CY" & AÑO ( [Fecha] ),

"Nombre del mes", FORMATO ( [Fecha], "mmmm"),

"Número de mes", MES ( [Fecha] ),

"Weekday", FORMAT ( [Fecha], "dddd"),

"Número de lunes a viernes", ENTRE SEMANA ( [Fecha] ),

"Cuarto", "Q" & TRUNC ( ( MES ( [Fecha] ) - 1 ) / 3 ) + 1

)

Creo otra tabla que contiene solo la columna "Fecha" para intervalo de prueba:

Fecha de prueba = ALLNOBLANKROW( 'Fecha' )

A continuación, creo dos mediciones que filtran filas de línea base y filas de prueba por separado con diferentes segmentaciones de datos.

Valores de línea base = SUMX( Valor, MainTable[Valor] )

Valores de prueba = CALCULATE(

[Valores de línea base],

ALL ( 'Fecha'),

USERELATIONSHIP( 'Fecha'[Fecha], 'Fecha de prueba' [Fecha] )

)

Ahora tengo dos mediciones que cambian sus valores cuando cambio las segmentaciones correspondientes.

Puedo calcular estadísticas por separado creando más medidas como:

Valores de línea base Promedio = AVERAGEX( Valor, MainTable[Valor] )

Valores de línea base MIN = MINX( Valor, MainTable[Valor]),

etc...

El problema con este método es que no puedo trazar estas dos medidas en el mismo gráfico (violín, caja o histograma). Pensé en crear dos tramas de violín separadas y valores END y START de eje y hardcoding, pero tengo una segmentación para la columna "Parámetro"; por lo tanto, cuando cambio el parámetro, el rango de valores es diferente.

¿Cómo debo continuar con el problema?

gracias.

2 REPLIES 2
Syndicate_Admin
Administrator
Administrator

Hola, @YuriiClaus

De acuerdo con su descripción y fórmulas DAX, parece que ha creado dos medidas para obtener el valor correcto que quería obtener, pero no puede encontrar un gráfico para mostrarlas juntas. Creo que puede probar el gráfico combinado en Power BI porque a menudo se usa para comparar varias medidas con diferentes rangos de valores.

v-robertq-msft_0-1618212597441.png

Crear y usar gráficos combinados en Power BI

Si este gráfico tampoco puede cumplir con sus requisitos, puede intentar ir a la fuente de la aplicación para encontrar su gráfico personalizado más adecuado:

https://appsource.microsoft.com/en-us/marketplace/apps?product=power-bi-visuals

¡Muchas gracias!

Saludos

Equipo de soporte comunitario _Robert Qin

Si este post ayuda, entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Hola, @v-robertq-msft

Gracias por su respuesta! El problema con el gráfico combinado es que no puedo trazar la distribución de un mesurment allí. Necesito algo como histrograma o tramas de cajas. Sé que puedo trazar un histograma con el gráfico de columnas creando un nuevo grupo con la columna de valor. Pero las mediciones no tienen la función de "nuevo grupo". Intenté buscar imágenes que puedan comparar dos distribuciones, pero en vano.

Gracias de nuevo,

Yurii

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.