Microsoft Fabric Community Conference 2025, March 31 - April 2, Las Vegas, Nevada. Use code FABINSIDER for a $400 discount.
Register nowGet inspired! Check out the entries from the Power BI DataViz World Championships preliminary rounds and give kudos to your favorites. View the vizzies.
Hola gente,
Estoy tratando de obtener el número de valores uninque dentro de una medida de valores distintos. El objetivo es mostrar una columna apilada que muestre el número total de clientes, el número distinto de clientes para ese año, los clientes recurrentes y el número de nuevos clientes para cada año que no aparecieron en años anteriores.
He podido mostrar 3 de los 4 elementos en un solo gráfico, pero no puedo calcular correctamente los nuevos clientes para cada año que no aparecen en años anteriores. Jugué con instrucciones "IF", counta / x y tablas con fechas mínimas, pero no puedo averiguar cómo mostrar este subconjunto de datos.
Mi idea ha sido centrarse en una instrucción "IF" que comprueba si se hace referencia a un cliente único en años anteriores.
Los datos que estoy utilizando son muy simples. Nombre y fecha del cliente (con jerarquía).
Fecha del nombre del cliente
A-cliente enero de 2000
A-cliente enero 2010
A-cliente enero 2021
B-Client enero de 2005
B-Client Enero 2015
B-Client Enero 2021
C-Client Enero 2021
D-Client enero de 2000
D-Client enero de 2005
D-Client Enero 2015
D-Client Enero 2021
Los resultados deben haber contado cada nuevo cliente para cada año comparando la fecha actual con fechas anteriores.
2000 2005 2010 2015 2021
2 1 0 0 1
Solved! Go to Solution.
No @kbruce ,
He creado un archivo pbix de ejemplo(ver adjunto) para usted, por favor, compruebe si eso es lo que desea.
1. Crear una columna calculada para obtener el año
Year = YEAR('Table'[Date])
2. Cree dos medidas como se indica a continuación para obtener el recuento de nuevos clientes
Measure =
VAR _minyear =
CALCULATE ( MIN ( 'Table'[Year] ), ALL ( 'Table'[Year] ) )
VAR _curyear =
SELECTEDVALUE ( 'Table'[Year] )
VAR _preclients =
CALCULATETABLE (
DISTINCT ( 'Table'[Client name] ),
FILTER ( ALL ( 'Table' ), 'Table'[Year] < _curyear )
)
VAR _curclients =
CALCULATETABLE (
DISTINCT ( 'Table'[Client name] ),
FILTER ( 'Table', 'Table'[Year] = _curyear )
)
RETURN
IF (
_curyear = _minyear,
DISTINCTCOUNT ( 'Table'[Client name] ),
COUNTROWS ( EXCEPT ( _curclients, _preclients ) )
)
Count of new clients = SUMX ( VALUES ( 'Table'[Year] ), [Measure] )
Saludos
Casi estoy ahí. No tomé en consideración múltiples instancias de un cliente en el mismo año, pero @yingyinr lo hice. Creo que estoy todo listo con estas dos respuestas.
Tras una revisión/retoque adicional, @yingyinr solución no es correcta y no resuelve la última parte de lo que se necesita.
El cliente A aparece varias veces en el mismo año @FrankAT está más cerca, pero la medida que calcula la columna agrega un 1 junto a cada uno de los duplicados, a continuación. Necesito eliminar los duplicados para obtener un recuento preciso.
A-cliente enero de 2000
A-cliente enero de 2000
A-cliente enero de 2000
No @kbruce ,
Como se comprueba en los datos de la tabla en su primer post, estos tres clientes A-cliente son de diferentes años (2000,2010 y 2021) por separado. Así que el cliente A-cliente no es valor duplicado en el mismo año... ¿Podría proporcionar algunos datos de ejemplo con clientes duplicados y su resultado esperado real con la lógica de cálculo correcta y ejemplos específicos. Gracias.
Saludos
No @kbruce ,
He creado un archivo pbix de ejemplo(ver adjunto) para usted, por favor, compruebe si eso es lo que desea.
1. Crear una columna calculada para obtener el año
Year = YEAR('Table'[Date])
2. Cree dos medidas como se indica a continuación para obtener el recuento de nuevos clientes
Measure =
VAR _minyear =
CALCULATE ( MIN ( 'Table'[Year] ), ALL ( 'Table'[Year] ) )
VAR _curyear =
SELECTEDVALUE ( 'Table'[Year] )
VAR _preclients =
CALCULATETABLE (
DISTINCT ( 'Table'[Client name] ),
FILTER ( ALL ( 'Table' ), 'Table'[Year] < _curyear )
)
VAR _curclients =
CALCULATETABLE (
DISTINCT ( 'Table'[Client name] ),
FILTER ( 'Table', 'Table'[Year] = _curyear )
)
RETURN
IF (
_curyear = _minyear,
DISTINCTCOUNT ( 'Table'[Client name] ),
COUNTROWS ( EXCEPT ( _curclients, _preclients ) )
)
Count of new clients = SUMX ( VALUES ( 'Table'[Year] ), [Measure] )
Saludos
No @kbruce ,
primero cree dos nuevas columnas calculadas, una con número de año y la otra de esta manera:
Utilice la siguiente medida en una matriz:
Con un cordial saludo desde la ciudad donde la leyenda del 'Gaitero pied de Hamelin' está en casa
FrankAT (Orgulloso de ser un Datanaut)
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code FABINSIDER for a $400 discount!
Check out the February 2025 Power BI update to learn about new features.