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.
Hola
Estoy calculando un distinctcount usando la instrucción filter de la siguiente manera:
Recuento único = Calculate(Distinctcount(Event_date), filter(Table, Table[Notified_event]="TRUE" || (Tabla['Event_type']=3 && Tabla['Event_status']="1"))))
La tabla['Event_type'] tiene tres valores, es decir, 1,2 y 3. Cuando Table[Notified_event] tiene el valor "TRUE" significa que Event_type valor es igual a 2.
La medida anterior devuelve algún número. Sin embargo, cuando cambié la medida anterior de manera diferente como se muestra a continuación:
Variante Recuento único =
Var _notified = Max(Tabla, Tabla[Notified_event])
Var _Type = MAx(Tabla['Event_type'])
Var _Status = Max(Tabla['Event_status'])
devolución
Calculate(Distinctcount(Event_date), filter(Table,_notified ="TRUE" || (_Type=3 && _Status ="1")))
Cuando corrí la variante anterior, devolvió un número diferente. Cuando depuré el [Recuento único de variantes], encontré que también devuelve filas con Event_type valor = 1 que no era el caso. No estoy seguro de por qué está devolviendo 1 valor. ¿Es porque usé la función MAX(). ¿Podría alguien ayudarme sobre este comportamiento?
Archivo de ejemplo se puede descargar desde aquí
Solved! Go to Solution.
No @leo_89
Por favor , mencione en sus respuestas o no las veré. Escriba @ y, a continuación, seleccione mi nombre.
¿Qué estás tratando de lograr?
Como he dicho, la 2ª medida en la que está declarando variables y luego tratando de obtener el MAX de columnas de texto devolverá resultados inesperados. Básicamente eso no funcionará, así que no uses ese enfoque.
Su primera medida es sintácticamente correcta y devolverá resultados sensatos. ¿Encuentras que hay algo malo con los resultados que te está dando?
Unique_count = CALCULATE(
DISTINCTCOUNT('Table'[Event_date]),
FILTER('Table','Table'[Notified_event]="TRUE" ||
('Table'[Event_type]="3" && 'Table'[Status]="1")
)
)
Pero está almacenando valores numéricos como texto en las columnas Event_type y Estado. ¿Por qué no utilizar estas columnas como numéricas?
saludos
Phil
No @leo_89
Por favor , mencione en sus respuestas o no las veré. Escriba @ y, a continuación, seleccione mi nombre.
¿Qué estás tratando de lograr?
Como he dicho, la 2ª medida en la que está declarando variables y luego tratando de obtener el MAX de columnas de texto devolverá resultados inesperados. Básicamente eso no funcionará, así que no uses ese enfoque.
Su primera medida es sintácticamente correcta y devolverá resultados sensatos. ¿Encuentras que hay algo malo con los resultados que te está dando?
Unique_count = CALCULATE(
DISTINCTCOUNT('Table'[Event_date]),
FILTER('Table','Table'[Notified_event]="TRUE" ||
('Table'[Event_type]="3" && 'Table'[Status]="1")
)
)
Pero está almacenando valores numéricos como texto en las columnas Event_type y Estado. ¿Por qué no utilizar estas columnas como numéricas?
saludos
Phil
No @leo_89
En la 2ª versión de la medida, obtendrá el MAX de 2 columnas de texto 'Table'[Notified Event] y 'Table'[Event_status]. Obtener MAX para columnas de texto puede devolver resultados inesperados.
En la instrucción RETURN, a continuación, indica FILTER the Table where _notified ="Yes", pero ya ha elaborado un valor para _notified. Dicho filtro de esta tabla donde un valor definido = otro valor dará como resultado un booleano True o False. Lo mismo para _Status = "Completado". Esperaría un comportamiento inesperado debido a esto.
Si usted puede proporcionar algunos datos reales tal vez pueda llegar a una solución de trabajo para usted.
saludos
Phil
Gracias por la respuesta. He añadido un archivo de ejemplo en la publicación.
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 |
---|---|
1 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
1 | |
1 | |
1 |