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.
Quiero filtrar una tabla, por diferentes atributos dependiendo del valor seleccionado en la segmentación de datos.
Así que para entender lo que tengo, esta es una tabla de localidades (... No sé si algún país de habla inglesa los usa, pero los encontré en el diccionario, y los usamos en México), de todos modos sus columnas son:
locality: key, name, soc_eco, size, urb_rur, municipality, population, etc...
Así que hay tres atributos principales para filtrar por: soc_eco, tamaño, urban_rural; y para el propósito de este ejemplo, vamos a centrarnos en agregar población.
He creado tablas manuales para esos atributos para vincular los valores correspondientes:
Attributes:
value | name | order
soc_eco | NSE | 1
size | Size | 2
urb_rur | U/R | 3
Attr.Values:
attr | value | match | rel_order
soc_eco | low | 1 | 1
soc_eco | med | 2 | 2
... | ... | ... | ...
size | small | 1 | 1
size | med | 2 | 2
... | ... | ... | ...
urb_rur | urban | U | 1
urb_rur | rural | R | 2
Lo que puedo hacer:
Pop_Measure = SWITCH( SELECTEDVALUE(attribute[value]),
"soc_eco", CALCULATE( SUM(localities[population]),
TREATAS( VALUES(attr_values[match]), localities[soc_eco]) ),
"size", CALCULATE( SUM(localities[population]),
TREATAS( VALUES(attr_values[match]), localities[size]) ),
"urb_rur", CALCULATE( SUM(localities[population]),
TREATAS( VALUES(attr_values[match]), localities[urban_rural]) ),
SUM(localities[population])
))
Sin embargo, tengo varias medidas como esta, y estoy buscando no repetir el relleno y guardarlo como una tabla calculada para usar en otras medidas.
La siguiente tabla calculada produce un error:
LocalityByAttr = SWITCH( SELECTEDVALUE(attributes[value]),
"soc_eco", TREATAS( VALUES(attr_value[match]), localities[soc_eco] ),
"size", TREATAS( VALUES(attr_value[match]), localities[size] ),
"urb_rur", TREATAS( VALUES(attr_value[match]), localities[urb_rur] ),
localities)
El error es:
The expression refers to multiple columns. Multiple columns cannot be converted to a scalar value.
¿Alguien sabe cómo darle la vuelta a esto? ¿Es esto posible?
Gracias.
Hola @Diego-CDMX ,
Si ha solucionado el problema por su cuenta, por favor comparta su solución. Si la ayuda de los mensajes anteriores, por favor márquela como una solución para ayudar a otros a encontrarlo más rápidamente. ¡Gracias!
Best Looks,
Yingjie Li
Hola, @Diego-CDMX,
No estoy seguro de lo que está tratando de hacer, pero una tabla calculada no puede ser reutilizada por otras medidas.
Salud
Sturla
Lo que intento hacer es esto.
Establezca los valores de Atributo en una segmentación de datos (selección única).
Y luego tener diferentes visualizaciones basadas en el atributo de localidad que se selecciona, esto puede ser cualquiera de los índices urbanos/rurales, de localidad o socioeconómico.
El problema no está en la creación de la medida, sino en el almacenamiento del filtro intermedio.
Ya lo he logrado, y se ve muy bien.
Pero sería mucho mejor, si dicho filtro se pudiera establecer en una variable u objeto diferente para que la codificación sea más clara.
Incluso dentro de la misma medida, no es posible lo siguiente:
Pop_by_attr =
VAR ByAttr = SWITCH( SELECTEDVALUE(attributes[value]),
"soc_eco", TREATAS( VALUES(attr_values[match]), localities[soc_eco]),
"size" , TREATAS( VALUES(attr_values[match]), localities[size]),
"urb_rur", TREATAS( VALUES(attr_values[match]), localities[urb_rur]),
localities)
RETURN CALCULATE( SUM(localities[population]), ByAttr)
Me da el mismo error.
Hola @Diego-CDMX ,
Puede intentar utilizar variables para guardar parte de los valores para evitar comillas repetidas en su medida, tal vez como esta:
Pop_Measure =
VAR _values =
VALUES ( attr_values[match] )
VAR _sum =
SUM ( localities[population] )
RETURN
SWITCH (
SELECTEDVALUE ( attribute[value] ),
"soc_eco", CALCULATE ( _sum, TREATAS ( _values, localities[soc_eco] ) ),
"size", CALCULATE ( _sum, TREATAS ( _values, localities[size] ) ),
"urb_rur", CALCULATE ( _sum, TREATAS ( _values, localities[urban_rural] ) ),
_sum
)
Best Looks,
Yingjie Li
Si este post ayuda, por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
@v-yingjl , su respuesta me acerca más a lo que necesito, pero todavía no es una solución para mí.
Tampoco podría solucionarlo por mi cuenta, ya que Power BI no me permitirá guardar los valores intermedios para reutilizarlos en medida adicional.
¿Qué debemos hacer con este boleto?
¿Es esto como un boleto donde todos necesitan ser cerrados, o es esta una comunidad donde esperamos que alguien venga en el futuro y desarrolle funcionalidad?
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 |
---|---|
2 | |
2 | |
2 | |
2 | |
1 |