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
Anonymous
Not applicable

cómo utilizar la medida que está en formato porcentual en la segmentación de datos

Hola a todos

Tengo los datos en el formato inferior y necesito proporcionar al usuario una segmentación de datos para seleccionar Tasa (última columna en la tabla siguiente). Debe ser una segmentación de rango como se muestra a continuación. Pero actualmente, la segmentación de datos no es compatible con una medida. ¿Alguna alternativa que pueda usar o lograr esto?

LP280388_0-1599735975341.png

source_systemorderstatusConteo rellenadoRecuento de órdenesTotal de pedidosTasa (Recuento Rellenado / Total de Pedidos)
AmruthaCancelado 4595956405
AmruthaLleno18203182035640532.27%
FrankCerrado19745197451994199.02%
FrankDetenido 1419941
FrankPresentado 21519941
LS 335614472
LSCancelado 1011914472
LSCerrado3636144720.25%
LSEliminado 314472
LSLleno12856128561447288.83%
LSAbierto 241014472
LSPendiente 7914472
LSProgramado 2914472
LlCancelado 10317
LlCerrado939331729.34%
LlLleno21121131766.56%
LlAbierto 2317
LlRelleno pendiente 1317
SwLleno435707435707435707100.00%
1 ACCEPTED SOLUTION

Hola @LP280388

Construyo una muestra para que resuelvas este problema. (La columna Tasa es una columna calculada)

Rate = 'Table'[Filled-Cosed count]/'Table'[Total Orders]

1.png

En primer lugar, cree una segmentación de datos, puede crear una tabla calculada directamente o crear un parámetro Whar if como respuestas anteriores.

Slicer = GENERATESERIES(0,1,0.0001)

A continuación, construir una medida para lograr su objetivo.

Aquí hay dos medidas diferentes para usted.

Measure1 = 
VAR _Max =
    MAX ( Slicer[Percent] )
VAR _Min =
    MIN ( Slicer[Percent] )
VAR _Maxx =
    MAXX ( ALL ( slicer ), Slicer[Percent] )
RETURN
    IF (
        _Max = _Maxx,
        IF (
            AND ( SUM ( 'Table'[Rate] ) >= _Min, SUM ( 'Table'[Rate] ) <= 1 ),
            SUM ( 'Table'[Rate] ),
            BLANK ()
        ),
        IF (
            AND ( SUM ( 'Table'[Rate] ) >= _Min, SUM ( 'Table'[Rate] ) <= _Max ),
            SUM ( 'Table'[Rate] ),
            BLANK ()
        )
    )

Measure 2 = 
VAR _Max =
    MAX ( Slicer[Percent] )
VAR _Min =
    MIN ( Slicer[Percent] )
VAR _Maxx =
    MAXX ( ALL ( slicer ), Slicer[Percent] )
VAR _a =
    CALCULATE (
        SUM ( 'Table'[Rate] ),
        FILTER ( 'Table', 'Table'[Rate] >= _Min && 'Table'[Rate] <= 1 )
    )
VAR _b =
    CALCULATE (
        SUM ( 'Table'[Rate] ),
        FILTER ( 'Table', 'Table'[Rate] >= _Min && 'Table'[Rate] <= _Max )
    )
RETURN
    IF ( _Max = _Maxx, _a, _b )

El resultado es el siguiente.

Predeterminado:

2.png

Utilice la segmentación de datos:

3.png

Puede descargar el archivo pbix desde este enlace: cómo utilizar measure que está en formato de porcentaje en la segmentación de datos

Saludos

Rico Zhou

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

View solution in original post

13 REPLIES 13
Ashish_Mathur
Super User
Super User

Hola

En lugar de permitir que el usuario seleccione cualquier valor en el objeto visual de segmentación de datos, ¿estará bien con la segmentación de datos que muestra los cubos, es decir, 0%-10%, 11%-15%, etc. En caso afirmativo, comparta el enlace desde donde puedo descargar su archivo PBI y también compartir los buckets que le gustaría ver en la segmentación de datos.


Regards,
Ashish Mathur
http://www.ashishmathur.com
https://www.linkedin.com/in/excelenthusiasts/
Anonymous
Not applicable

@Ashish_Mathur Gracias por la sugerencia. pero para mi mala suerte, el cliente lo requiere como una cortadora.

Hola

Será una cortadora. Es sólo que su cliente no será capaz de seleccionar 32.6%, pero en su lugar será capaz de seleccionar un soporte como 30% - 35%. ¿Estará bien?


Regards,
Ashish Mathur
http://www.ashishmathur.com
https://www.linkedin.com/in/excelenthusiasts/
Anonymous
Not applicable

@Ashish_Mathur Gracias Ashish,

Eso estaría bien, supongo. No puedo compartir el archivo aquí, ya que no tengo la opción.

¿Será capaz de crear un archivo con el archivo de prueba y la segmentación de datos y compartir con algunos datos ficticios.

Las columnas que tengo son

Fuente, OrderID, Orderstatus, Specialty, SubSpecialty, Bill, Fill Rate

La lata de cubo de incrementos del 5%.

Hola @LP280388

¿Podría decirme si su problema ha sido resuelto? Si es así, acédi es la solución. Más gente se beneficiará de ello. O todavía está confundido al respecto, por favor proporcione más detalles sobre su tabla y su problema o compártame con su archivo pbix de su Onedrive for Business.

Saludos

Rico Zhou

Hola @LP280388

Construyo una muestra para que resuelvas este problema. (La columna Tasa es una columna calculada)

Rate = 'Table'[Filled-Cosed count]/'Table'[Total Orders]

1.png

En primer lugar, cree una segmentación de datos, puede crear una tabla calculada directamente o crear un parámetro Whar if como respuestas anteriores.

Slicer = GENERATESERIES(0,1,0.0001)

A continuación, construir una medida para lograr su objetivo.

Aquí hay dos medidas diferentes para usted.

Measure1 = 
VAR _Max =
    MAX ( Slicer[Percent] )
VAR _Min =
    MIN ( Slicer[Percent] )
VAR _Maxx =
    MAXX ( ALL ( slicer ), Slicer[Percent] )
RETURN
    IF (
        _Max = _Maxx,
        IF (
            AND ( SUM ( 'Table'[Rate] ) >= _Min, SUM ( 'Table'[Rate] ) <= 1 ),
            SUM ( 'Table'[Rate] ),
            BLANK ()
        ),
        IF (
            AND ( SUM ( 'Table'[Rate] ) >= _Min, SUM ( 'Table'[Rate] ) <= _Max ),
            SUM ( 'Table'[Rate] ),
            BLANK ()
        )
    )

Measure 2 = 
VAR _Max =
    MAX ( Slicer[Percent] )
VAR _Min =
    MIN ( Slicer[Percent] )
VAR _Maxx =
    MAXX ( ALL ( slicer ), Slicer[Percent] )
VAR _a =
    CALCULATE (
        SUM ( 'Table'[Rate] ),
        FILTER ( 'Table', 'Table'[Rate] >= _Min && 'Table'[Rate] <= 1 )
    )
VAR _b =
    CALCULATE (
        SUM ( 'Table'[Rate] ),
        FILTER ( 'Table', 'Table'[Rate] >= _Min && 'Table'[Rate] <= _Max )
    )
RETURN
    IF ( _Max = _Maxx, _a, _b )

El resultado es el siguiente.

Predeterminado:

2.png

Utilice la segmentación de datos:

3.png

Puede descargar el archivo pbix desde este enlace: cómo utilizar measure que está en formato de porcentaje en la segmentación de datos

Saludos

Rico Zhou

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

Hola

Sube el archivo a Google Drive o a un servicio similar y comparte el enlace de descarga.


Regards,
Ashish Mathur
http://www.ashishmathur.com
https://www.linkedin.com/in/excelenthusiasts/
Greg_Deckler
Super User
Super User

@LP280388 - Creo que esencialmente necesita un Selector Complejo - https://community.powerbi.com/t5/Quick-Measures-Gallery/The-Complex-Selector/m-p/1116633#M534

Por lo tanto, cree un parámetro What If con su %, luego algo como:

Selector Measure = 
  VAR __Min = MIN('Slicer'[Value])
  VAR __Max = MAX('Slicer'[Value])
RETURN
  IF([OrdersRate]>=__Min && [OrdersRate]<=__Max,1,0)

Supone Que OrdersRate es una medida, suponiendo que la usaría en la segmentación de datos. A continuación, filtre el objeto visual en el que Medición del selector 1


@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
The Definitive Guide to Power Query (M)

DAX is easy, CALCULATE makes DAX hard...
Anonymous
Not applicable

@Greg_Deckler Hola Greg,

gracias por la respuesta,

Estoy teniendo un error al crear este "selector Measure"

Error: la columna 'Valor de parámetro' en la tabla 'Parámetro' no se puede encontrar o no se puede utilizar en esta expresión

¿Puedo resolver esto?

Medición del Selector (Selector Measure)
VAR __Min á MIN('Parameter'[Parameter Value])
VAR __Max á MAX('Parameter'[Parameter Value])
devolución
IF([fillrate]>-__Min && [fillrate]<-__Max,1,0)

@LP280388 No sé. Es una fórmula de medida o columna. Si es una medida, ¿tiene esa columna en esa tabla?


@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
The Definitive Guide to Power Query (M)

DAX is easy, CALCULATE makes DAX hard...
Anonymous
Not applicable

@Greg_Deckler El parameter[value] es una medida automática creada cuando se crea un parámetro con la funcionalidad del parámetro Whatif.

amitchandak
Super User
Super User

@LP280388, puede usar measure from slicer. Puede crear una segmentación de datos con what if o generar series y usarla como filtro

Para archivar una medida necesita forzar un contexto de fila en la fórmula

Sumx(values(Table[Category]) ,if([Measure] <- selectedvalue(Parameter[parameter]), [Measure] , blank()))

https://docs.microsoft.com/en-us/power-bi/desktop-what-if

O puede crear un bucket mediante binning o segmentación

https://www.daxpatterns.com/dynamic-segmentation/
https://radacad.com/grouping-and-binning-step-towards-better-data-visualization

Anonymous
Not applicable

@amitchandak Thanks Amit,

 

Would it be possible to explain me how can i have what if parameter with my data. I want this Rate slicer to filter all the visuals i have in one page in my powerbi file with multiple measures in each of them.

 

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.