March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early bird discount ends December 31.
Register NowBe one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now
Hola
Tengo algunos datos similares a los siguientes:
Fecha | id de usuario | id de registro | tipo de registro | incluye el apego? |
01/01/20 | A | 100 | X | Y |
01/01/20 | B | 101 | Y | N |
02/01/20 | A | 101 | X | Y |
02/01/20 | B | 103 | X | Y |
02/01/20 | C | 104 | Y | N |
03/01/20 | A | 105 | Z | N |
03/01/20 | B | 106 | X | N |
03/01/20 | C | 107 | Y | N |
Sólo quiero calcular el porcentaje de usuarios que siempre, nunca o a veces incluye un archivo adjunto con sus registros.
La parte que me da un dolor de cabeza es la esperanza de calcular esto dinámicamente con o sin un tipo de registro específico seleccionado y también para un intervalo de fechas filtrado. Eg. la categorización (a veces, siempre, nunca) se debe volver a calcular si se filtra por un tipo de registro específico para un intervalo de fechas específico.
Había comenzado por, en powerquery, agrupación por ID de usuario y tipo de registro y luego pivotar en 'registro incluye archivo adjunto'. Aunque esto me permite escribir un conjunto simple distinto de identificadores de usuario medir que sólo es preciso cuando se selecciona un tipo de registro y no permitirá el filtrado por fecha.
Creo que quiero escribir una(s) medida(s) que:
¿Puede alguien sugerir un enfoque para abordar este problema, por favor? Cualquier guía muy apreciada.
Creo que pude conseguir algo cercano a lo que estás buscando. La categorización de los usuarios y el recuento de usuarios por categorización seguirán las selecciones de segmentación de datos.
Categorization =
VAR _Y =
CALCULATE(
SUMX(
DISTINCT('Table'[user id]),1)
,'Table'[includes attachment?] = "Y"
)
VAR _N =
CALCULATE(
SUMX(
DISTINCT('Table'[user id]),1)
,'Table'[includes attachment?] = "N"
)
RETURN
SWITCH(
TRUE(),
_Y = 1 && _N = 0, "Always",
_Y = 1 && _N = 1, "Sometimes",
_Y = 0 && _N = 1, "Never"
)
User Count =
CALCULATE(
DISTINCTCOUNT('Table'[user id]),
FILTER(
VALUES('Table'[user id]),
COUNTROWS(
FILTER(
Categories, [Attach Yes] = Categories[Y] && [Attach No] = Categories[N])
) > 0
)
)
Agredí una tabla de categorías para usarla al agrupar los recuentos de usuarios.
He adjuntado mi archivo de muestra para que lo mires.
@jdbuchanan71 esto es perfecto, muchas gracias!
Justo lo que necesitaba y aprendí mucho de la forma en que has diseñado los diversos componentes. Te lo agradezco mucho.
@doug19 , Puede crear una nueva columna en la tabla como
categoría ?
var _A - countx(filter(table,table[user id] ? earlier([user id])),[user Id])
var _Y - countx(filter(table,table[user id] ? earlier([user id]) && Table[includes attachment] ?"Y"),[user Id])
var _N - countx(filter(table,table[user id] ? earlier([user id]) && Table[includes attachment] ?"N"),[user Id])
devolución
interruptor ( True(),
[_A] - [_Y] , "Siempre",
[_A] , [_N] , "Nunca",
"En algún momento")
También puede tener medidas como estas
siempre ?
countx(filter(summarize(table,table[user id], "_1", countrows(Table), "_2",calculate(countrows(Table),Table[includes attachment] ?"Y"),[_1]-[_2]),[Id de usuario])
Nunca
countx(filter(summarize(table,table[user id], "_1", countrows(Table), "_2",calculate(countrows(Table),Table[includes attachment] ?"N"),[_1]-[_2]),[Id de usuario])
en algún momento
countx(filter(summarize(table,table[user id], "_1", countrows(Table), "_2",calculate(countrows(Table),Table[includes attachment] ?"Y")),not(isblank([_2])) && [_1]>[_2]),[ID de usuario])
Muchas gracias por esto, muy apreciado. Definitivamente necesitas tener mi cabeza usando antes y también usando interruptor. Hemos detectado un problema desconocido.
Gracias de nuevo
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!
Your insights matter. That’s why we created a quick survey to learn about your experience finding answers to technical questions.
Arun Ulag shares exciting details about the Microsoft Fabric Conference 2025, which will be held in Las Vegas, NV.