Necesita ayuda para escribir una medida para DIVIDIR valores de columnas de tablas separadas

Un usuario Pregunto ✅

Mukul_Lele

Quiero dividir el valor de la columna 1 con el valor de la columna 2. Yo uso una medida y una función DIVIDE. Vea la instantánea a continuación. Tenga en cuenta que ambas comunicaciones están en tablas diferentes. También tenga en cuenta que el total de filas (entradas) en la tabla 2 es menor que la tabla 1.

Recibo el siguiente error (ver instantánea) cada vez que pruebo esto.

¿Alguna ayuda para resolver este problema?

Quiero dividir dos valores y mostrarlo como un porcentaje en una visualización de tarjeta.

error.pngconsulta.PNG

eljeswar

Hola @Mukul_Lele,

El mensaje de error que recibe se debe a que en el Cálculo DAX que está utilizando el Numerador y los Denominadores están proporcionando múltiples valores donde se espera que den solo un valor.

es decir, debe agrupar sus valores de numerador y denominador por algunas funciones agregadas como SUM, AVG, MIN, MAX, etc.

Además, dado que se trata de una medida, su medida agrupada se dividirá automáticamente según el nivel de agregación con el que se utilicen. Así que no te preocupes por el valor.

Por lo tanto, en su caso, su medida DAX debería ser la siguiente

column = DIVIDE(SUM('MobileData'[MobileUsage]),SUM('ActiveAccount-14May2018'[num_learners]))*100

¡¡¡Espero que esto resuelva tu problema!!!

Saludos,

eljeswar

eljeswar

Hola @Mukul_Lele,

El mensaje de error que recibe se debe a que en el Cálculo DAX que está utilizando el Numerador y los Denominadores están proporcionando múltiples valores donde se espera que den solo un valor.

es decir, debe agrupar sus valores de numerador y denominador por algunas funciones agregadas como SUM, AVG, MIN, MAX, etc.

Además, dado que se trata de una medida, su medida agrupada se dividirá automáticamente según el nivel de agregación con el que se utilicen. Así que no te preocupes por el valor.

Por lo tanto, en su caso, su medida DAX debería ser la siguiente

column = DIVIDE(SUM('MobileData'[MobileUsage]),SUM('ActiveAccount-14May2018'[num_learners]))*100

¡¡¡Espero que esto resuelva tu problema!!!

Saludos,

eljeswar

Mukul_Lele

En respuesta a eljeswar

Lo intenté, la consulta funcionó pero no me dio el valor esperado.

Para una entrada de cliente específica que selecciono, espero que esta regla divida los valores de uso móvil / num_Learners solo para esta fila de cliente. No parece funcionar. El valor del resultado no es la división correcta.

Disculpas en caso de que no esté usando los términos correctos para explicar mi problema. Solo llevo unos días en PowerBI y todavía me estoy preparando. La instantánea adjunta debería ayudar. powerbi.png

Ashish_Mathur

En respuesta a Mukul_Lele

Hola,

La fórmula sugerida por @Thejeswar debe ingresarse como una medida (no como una columna calculada).

Mukul_Lele

En respuesta a Ashish_Mathur

Gracias Ashish por señalarlo. Ese cambio funcionó.

Ashish_Mathur

En respuesta a Mukul_Lele

De nada.

eljeswar

En respuesta a Ashish_Mathur

Hola,

Bien dicho por @Ashish_Mathur.

@Mukul_Lele, espero que estés usando el DAX como medida. Si está utilizando esto como una columna, conviértalo en una medida.

He mencionado crearlo como una medida en mi Primera publicación sobre este tema.

Saludos,

eljeswar

Mukul_Lele

En respuesta a eljeswar

Hola,

Gracias. Funcionó bien. Lo estaba usando como una ‘columna’. Lo cambié a ‘medida’ y funcionó bien.

Traté de leer y entender la diferencia entre ambos. Desafortunadamente todavía no está muy claro. Podría entender que las columnas se procesan durante el tiempo de carga de datos y las medidas se calculan en el contexto. Pero la diferencia funcional entre los dos no está clara para mí. Por lo tanto, me pregunto por qué la ‘columna’ seguía dándome un resultado de 3.74 en todas las filas de la columna.

Sería genial si pudiera indicarme alguna lectura que me ayude a diferenciar mejor.

En general… gracias por ayudarme a resolver este problema.

eljeswar

En respuesta a Mukul_Lele

Bienvenidos..

eljeswar

En respuesta a Mukul_Lele

Hola @Mukul_Lele,

Probé el escenario que publicaste. Todavía encuentro el cálculo para darme la información correcta.

¿Estás seguro de la observación de tu informe?

He agregado las imágenes de mi consideración de datos, fórmula DA y visualización de informes para su verificación cruzada

Escenario 1: Todos mis datos en una sola tabla

Mis datos:

Nombre de la organización Uso móvil num_Estudiantes
A B C 728 1754
DEF 124 546
GHI 985 625
DEF 215 212
GHI 689 322
DEF 546 842
GHI 866 1622

Código DAX:

Measure = DIVIDE(SUM(Table1[MobileUsage]),SUM(Table1[num_Learners])) *100

Escenario 2: cuando los datos están en 2 tablas diferentes

Datos:

Tabla: datos móviles

Nombre de la organización Uso móvil
A B C 728
DEF 124
GHI 985
DEF 215
GHI 689
DEF 546
GHI 866

Tabla: ActiveAccount-14May2018

Nombre de la organización num_Estudiantes
A B C 1754
DEF 546
GHI 625
DEF 212
GHI 322
DEF 842
GHI 1622

Código DAX:

Measure = DIVIDE(SUM(MobileData[MobileUsage]),SUM('ActiveAccount-14May2018'[num_Learners])) *100

Visualización del informe:

calcular_Dividir.PNGLa visualización de mi informe sigue siendo la misma en ambas instancias. Por favor revise su informe una vez más….

Saludos,

eljeswar

Mukul_Lele

En respuesta a eljeswar

Hola,

Gracias por la explicación detallada. Revisé y volví a verificar, pero todavía no me funciona.

Muestra el valor como 3.74 para todas las filas en mi columna ‘Medida’. Seguiré buscando cualquier error cometido por mi parte.

Solo una pregunta –

En mis datos, las entradas de MobileUsage son menores que las entradas de num_learners. Digamos que hay 10 filas de datos para MobileUsage, el resto todas las filas están vacías. Los datos de num_learners se completan para todas las filas de la Organización. ¿Esto causa algún problema al usar la suma y la división? Solo comprobando si esto podría estar causando algún problema.

Mukul

eljeswar

En respuesta a Mukul_Lele

Hola @Mukul_Lele,

La diferencia en el no. de filas no debería causar ningún problema siempre que sus uniones sean adecuadas, según tengo entendido.

Pero dado que dice que 3.74 se repite para todas las filas, podría ser un caso de unión cruzada u otro problema con la unión entre las dos tablas (MobileData y ActiveAccount-14May2018.

De lo contrario, podría ser un problema de agregación que da como resultado los mismos valores de numerador y denominador para todas las organizaciones en la medida. Supongo que este no es tu caso.

Aparte de esto, no veo ningún caso potencial para este problema.

En los dos casos mencionados anteriormente, es posible que tengamos que verificar las relaciones entre las tablas en su modelo de datos

Así que verifique si las uniones de su modelo de datos son apropiadas

Saludos,

eljeswar

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *