The ultimate Microsoft Fabric, Power BI, Azure AI, and SQL learning event: Join us in Stockholm, September 24-27, 2024.
Save €200 with code MSCUST on top of early bird pricing!
Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started
Estimados todos,
Siento que mi problema se puede describir como un problema de geojerarquía, pero creo que es diferente al descrito en esta publicación:
Creación de jerarquía geográfica - Microsoft Fabric Community
Así que aquí está: tengo la tabla adjunta (formato tabular de Excel) que muestra una columna de países y al lado otra columna con un código de dos letras para cada país. Al lado de estos, tengo una columna con los países miembros de la UE, otra con los miembros del EEE y otra con los miembros de los BRIC. También hay algunos países (EE.UU., Singapur) que no son miembros de dichas instituciones. Lo que necesito es poder usar estos grupos -y los países que no pertenecen a ninguno de estos- para filtrar otras tablas que contienen datos numéricos macroeconómicos sobre estos países, especialmente en gráficos de burbujas, gráficos de líneas/combinados, así como imágenes de matrices y tablas. ¿Es posible? ¿Es mejor si rediseño la tabla de Excel de alguna otra manera para prepararla mejor para la importación en Power BI? También puedo enviar el .pbix si eso es lo que se necesita.
Muchas gracias
Nombre del país | Código de país | Miembro de la UE | Miembro del EEE | Miembro de los BRIC |
Austria | EN | UE | AEMA | |
Bélgica | SER | UE | AEMA | |
Bulgaria | BG | UE | AEMA | |
Chipre | EN | UE | AEMA | |
Checo | CZ | UE | AEMA | |
Alemania | DE | UE | AEMA | |
Dinamarca | DK | UE | AEMA | |
Estonia | ES | UE | AEMA | |
Ellas | EL | UE | AEMA | |
Espana | ES | UE | AEMA | |
Finlandia | SER | UE | AEMA | |
Francia | FR | UE | AEMA | |
Croacia | HR | UE | AEMA | |
Hungría | HU | UE | AEMA | |
Irlanda | IE | UE | AEMA | |
Islandia | ES | AEMA | ||
Italia | ESO | UE | AEMA | |
Lichtenstein | LI | AEMA | ||
Lituania | LT | UE | AEMA | |
Luxemburgo | LU | UE | AEMA | |
Letonia | LV | UE | AEMA | |
Malta | MT | UE | AEMA | |
Países Bajos | NL | UE | AEMA | |
Noruega | NO | AEMA | ||
Polonia | DESPUÉS | UE | AEMA | |
Portugal | PT | UE | AEMA | |
Rumania | RO | UE | AEMA | |
Suecia | SE | UE | AEMA | |
Eslovenia | SÍ | UE | AEMA | |
Eslovaquia | SK | UE | AEMA | |
Estados Unidos | NOS | |||
Reino Unido | Reino Unido | AEMA | ||
Suiza | CH | AEMA | ||
Japón | JP | |||
Singapur | SG | |||
Brasil | BR | BRICS | ||
Rusia | RU | BRICS | ||
India | EN | BRICS | ||
China | CN | BRICS |
Solved! Go to Solution.
Hola a todos, gracias por su rápida respuesta, agregaré más.
Hola @PowerNewbieGR_1 ,
Creo que debe ajustar la tabla para usarla para filtrar con segmentaciones.
Los datos de la tabla se muestran a continuación:
Utilice la siguiente expresión DAX para crear una tabla.
Table =
VAR _table1 = SUMMARIZE('Φύλλο1',[Country Name],[EU Member])
VAR _table2 = SUMMARIZE('Φύλλο1',[Country Name],[EEA Member])
VAR _table3 = SUMMARIZE('Φύλλο1',[Country Name],[BRICs Member])
VAR _table4 = UNION(_table1,_table2,_table3)
RETURN _table4
Use la siguiente expresión DAX para crear una tabla antoher
Table 2 =
VAR _table1 = ADDCOLUMNS('Table',"Column",CALCULATE(COUNTROWS(FILTER('Table',[Member] = BLANK())),ALLEXCEPT('Table','Table'[Country Name])))
VAR _table2 = ADDCOLUMNS(_table1,"Group", IF([Column] = 3,"Not a member",[Member]))
RETURN SELECTCOLUMNS(FILTER(_table2,[Group] <> BLANK()),"Country Name",[Country Name],"Group",[Group])
Salida de Fianl
Solo tienes que unir la columna "Nombre del país" de esta tabla con otras tablas para filtrar los datos correspondientes.
Saludos
Wenbin Zhou
Si esta publicación ayuda, considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.
Estimado @v-zhouwen-msft ,
Sin embargo, traté de replicar sus pasos en el Paso 3 Dividir columna, después de presionar el ícono Guardar (para guardar los cambios, incluida la columna dividida), recibo el siguiente mensaje en el Editor de Power Query:
"La columna "Nombre del país" en Φύλλο1 (es decir, Hoja1) ya tiene un valor doble para el término "Austria", que no está permitido para las columnas de un lado de una relación de "muchos a uno" o para las columnas que se utilizan como clave principal en una tabla".
Inactivé todas las relaciones que conducen a Φύλλο1, pero aún así el problema persiste.
¿Alguna idea de lo que puedo hacer?
Gracias una vez más a ti, así como a @newellaa y @foodd por intentar ayudarme.
Hola, @PowerNewbieGR_1
Elimine todas las relaciones y, a continuación, realice los pasos anteriores.
Al importar los datos de esta tabla, Power BI crea automáticamente una relación de uno a varios. (Cuando complete los pasos que proporciono, la relación de tabla se convertirá en de varios a varios, lo que entra en conflicto con el de uno a varios creado anteriormente).
Pero si no modifica la estructura de la tabla, debe crear tres segmentaciones para filtrar por país en función de la organización. (De hecho, esto puede filtrar datos, pero a medida que aumenta el número de organizaciones, es necesario crear más segmentaciones).
Esta es la estructura modificada de la tabla. Solo necesitas crear una segmentación. Puede crear una relación de varios a varios entre tablas, pero no lo recomiendo. Solo necesita usar la función IF para simplemente modificar su valor de medida para completar el filtrado.
Algo así.
Measure =
IF( NOT ISFILTERED('Table'[Group]),
SUM('EuroCountries Available Funds and Deposits'[Available Protection Funds to Total Deposits Coverage Ratio]),
IF(SELECTEDVALUE('EuroCountries Available Funds and Deposits'[Country Name]) IN VALUES('Table'[Country Name]),
SUM('EuroCountries Available Funds and Deposits'[Available Protection Funds to Total Deposits Coverage Ratio])
)
)
Saludos
Wenbin Zhou
Si esta publicación ayuda, considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.
Estimado @v-zhouwen-msft ,
Seguí tus pasos y creé Measure2 usando la sintaxis que me envías. Después de eso, hice lo siguiente:
a) A modo de ejemplo, traté de filtrar el gráfico de la matriz llamado "Matriz de la relación entre los fondos de protección y la relación entre la cobertura de los depósitos totales" utilizando la segmentación que ha visto. El resultado fue que he filtrado la segmentación en sí, pero no el gráfico de matriz. Probablemente sea algún paso extra fácil que no sé cómo realizar. Así que, por favor, compruébalo y ayúdame.
b) Además, si estoy juzgando correctamente a partir de la sintaxis de la medida, ¿significa que para todos y cada uno de los gráficos que me gustaría filtrar tendré que crear una nueva medida como la que usted sugirió? o va a funcionar para todos los gráficos simplemente usando (copiando) la misma segmentación con las columnas CountryName y Group ?
Sé que probablemente estas son preguntas básicas que debería haber sabido las respuestas, pero en realidad es mi primer intento con Power BI.
Adjunto un enlace a la copia del archivo Power BI
Muchas gracias una vez más a ustedes @v-zhouwen-msft y a todos los demás que ayudan.
Hola @PowerNewbieGR_1 ,
Con respecto a su primera pregunta, la imagen es que está llenando la imagen con medidas rápidas.
Debe crear manualmente una medida y reemplazar la medida rápida. (Cada objeto visual de página debe reemplazar la medida rápida).
Measure 3 =
IF( SELECTEDVALUE('EuroCountries Available Funds and Deposits'[Country Name]) IN VALUES('Table'[Country Name]),
SUM('EuroCountries Available Funds and Deposits'[Available Protection Funds to Total Deposits Coverage Ratio])
)
Si cree que la carga de trabajo es demasiado o no sabe lo suficiente sobre DAX, le sugiero que cree una relación de varios a varios.
De esta manera, no necesita crear medidas manualmente, puede usar medidas rápidas directamente.
Saludos
Wenbin Zhou
Después de tu último post lo tengo ahora.
Muy apreciado
Muchas gracias
Saqué la tabla y la uní a mis datos. También creé otro campo para permitir el filtrado en la organización.
Tal vez me estoy perdiendo lo que estás tratando de lograr.
Hola @newellaa
Estaba a punto de enviar a través de dropbox mis archivos .xlsx y .pix siguiendo @foodd consejo, cuando llegó tu respuesta.
A juzgar por la captura de pantalla de Filtros, creo que lo que hiciste es justo lo que quería. Sin embargo, siendo un novato en Power Bi, no estoy seguro de cómo hacer esto. De todos modos, a continuación se muestra el enlace a una carpeta de WeTransfer que incluye
a) mi archivo .xlsx (que probablemente necesite algún reorganización para que se importe en Power Bi, pero no estoy seguro de qué)
b) v5.pbix es la versión del .pbix con la que estaba trabajando. Los gráficos (especialmente los gráficos de líneas y los gráficos de burbujas) en este, son los que me gustaría poder filtrar en función de los campos anteriores.
c) "Protección de Depósitos Bancarios" mi versión actual con la que voy a trabajar -y aún no tiene todas las imágenes- pero el objetivo es el mismo que antes.
Muchas gracias
P.D. Todos los datos involucrados se derivan de fuentes abiertas, por lo que ... No te preocupes por la sensibilidad de Dagta
Desafortunadamente, nuestra empresa restringe el acceso a WeTransfer.
Lo que tienes que hacer es sencillo. Copie la tabla de países y péguela en la función Introducir datos de la pestaña Inicio.
Desde la vista de modelo, cree una unión desde la nueva tabla a sus datos de hechos en el código de país.
Vuelva a la vista de informe y podrá usar las nuevas columnas de la tabla como filtros.
Hola @PowerNewbieGR_1 , y gracias por compartir una pregunta con la comunidad. La descripción de su problema es clara y está bien escrita. Esta respuesta es informativa. Recuerde adherirse al decoro del Foro de la Comunidad cuando haga una pregunta.
Proporcione el archivo de código fuente en formato XLSX y el archivo de Power BI Desktop en curso (con información confidencial eliminada) que cubra su problema o pregunta completamente en un formato utilizable (no como una captura de pantalla). Puede cargar el archivo PBIX en un servicio de almacenamiento en la nube como OneDrive, Google Drive, Dropbox o en un repositorio de Github y, a continuación, compartir la dirección URL de un archivo.
https://community.fabric.microsoft.com/t5/Community-Blog/How-to-provide-sample-data-in-the-Power-BI-...
Muestre el resultado esperado en función de los datos de muestra que proporcionó.
https://community.fabric.microsoft.com/t5/Desktop/How-to-Get-Your-Question-Answered-Quickly/m-p/1447...
Esto permite a los miembros del foro evaluar el estado del modelo, la capa de informe, las relaciones y cualquier DAX aplicado.
Si su requerimiento está resuelto, por favor haga de ESTA RESPUESTA una SOLUCIÓN ✔️ y ayudar a otros usuarios a encontrar la solución rápidamente. Por favor, pulsa el botón ME GUSTA 👍 si este comentario te ayuda. ¡Orgulloso de ser un Súper Usuario!
Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.
Check out the August 2024 Power BI update to learn about new features.