Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
Anonymous
Not applicable

Intentar encontrar un valor basado en la última fecha en otra celda. Agrupado por ID

Tengo una columna de identificación con identificadores no únicos.

Tengo otra columna con fechas.

Tengo una tercera columna que tiene un 0 o 1 dependiendo de una condición.

Para cada identificador, estoy intentando encontrar el valor 0 o 1 para la fecha más reciente en la columna de fecha agrupada por identificador y agregarlo para cada fila para ese identificador en una nueva columna. Estoy tratando de crear el "Estado activo más reciente" en el ejemplo siguiente:

IdFechasEstado activo en la fechaEstado activo más reciente
111/1/201310
111/1/201500
15/1/201510
211/1/201211
211/1/201411
35/1/201401
311/1/201311
311/1/201511
35/1/201501

2 ACCEPTED SOLUTIONS
amitchandak
Super User
Super User

Prueba nuevas columnas

Max date = maxx(filter(table,table[ID] = earlier(table[ID])  ),table[Date]) 
Max Status = maxx(filter(table,table[ID] = earlier(table[ID])   && table[date] = earlier(table[Max date ])),table[status]) 

View solution in original post

v-kelly-msft
Community Support
Community Support

Hola @rfhickey ,

Puede crear una medida como se indica a continuación:

Measure = 
var a =CALCULATE(MAX('Table'[Dates]),ALLEXCEPT('Table','Table'[ID]))
Return
CALCULATE(MAX('Table'[Active Status at Date]),'Table'[Dates]=a)

Y verás:

Annotation 2020-04-01 153459.png

O puede crear una columna calculada como se muestra a continuación:

Column = 
var a =CALCULATE(MAX('Table'[Dates]),ALLEXCEPT('Table','Table'[ID]))
var b= CALCULATE(MAX('Table'[Active Status at Date]),FILTER('Table','Table'[ID]=EARLIER('Table'[ID])),'Table'[Dates]=a)
Return
b

Y verás:

Annotation 2020-04-01 153650.png

Para el archivo .pbix relacionado, haga clic aquí.

Saludos
Kelly
¿Respondí a tu pregunta? ¡Marca mi puesto como solución!

View solution in original post

6 REPLIES 6
v-kelly-msft
Community Support
Community Support

Hola @rfhickey ,

Puede crear una medida como se indica a continuación:

Measure = 
var a =CALCULATE(MAX('Table'[Dates]),ALLEXCEPT('Table','Table'[ID]))
Return
CALCULATE(MAX('Table'[Active Status at Date]),'Table'[Dates]=a)

Y verás:

Annotation 2020-04-01 153459.png

O puede crear una columna calculada como se muestra a continuación:

Column = 
var a =CALCULATE(MAX('Table'[Dates]),ALLEXCEPT('Table','Table'[ID]))
var b= CALCULATE(MAX('Table'[Active Status at Date]),FILTER('Table','Table'[ID]=EARLIER('Table'[ID])),'Table'[Dates]=a)
Return
b

Y verás:

Annotation 2020-04-01 153650.png

Para el archivo .pbix relacionado, haga clic aquí.

Saludos
Kelly
¿Respondí a tu pregunta? ¡Marca mi puesto como solución!
Anonymous
Not applicable

@v-kelly-msft Gracias por responder!

Usé el enfoque de columna calculado ya que no estoy muy familiarizado con las medidas. Funcionó muy bien. Era realmente una solución elegante con esas variables.

Todavía estoy tratando de conseguir mi cabeza alrededor de la función EARLIER().

¡Gracias por tu ayuda!

amitchandak
Super User
Super User

Prueba nuevas columnas

Max date = maxx(filter(table,table[ID] = earlier(table[ID])  ),table[Date]) 
Max Status = maxx(filter(table,table[ID] = earlier(table[ID])   && table[date] = earlier(table[Max date ])),table[status]) 
Anonymous
Not applicable

@amitchandak Gracias por tomarse el tiempo para responder. ¡Tu solución funcionó! Todavía estoy tratando de entender lo que hace EARLIER(), pero al jugar con el código, parece que aplica el resultado de la ecuación a todas las filas que cumplen con las condiciones del filtro en lugar de solo la fila donde se encuentra maxx().

AiolosZhao
Memorable Member
Memorable Member

Hola @rfhickey ,

Por favor, intente utilizar la siguiente medida, funciona en mi escritorio:

Measure 8 = CALCULATE(MAX('Table (2)'[Most Recent Active Status]),FILTER(ALL('Table (2)'[Dates]),'Table (2)'[Dates] = CALCULATE(MAX('Table (2)'[Dates]),ALLEXCEPT('Table (2)','Table (2)'[ID]))))

Trying to Find One Value Based on the Latest Date in Another Cell. Grouped By ID.PNG

Aiolos Zhao





Did I answer your question? Mark my post as a solution!

Proud to be a Super User!




Anonymous
Not applicable

@AiolosZhao Gracias por tomarse el tiempo para responder a mi pregunta. ¡Probé tu solución, y funcionó! Todavía estoy tratando de entender cómo las medidas difieren de las columnas calculadas. Parece que no se pueden usar medidas en la vista Datos, pero las medidas se pueden usar al crear una tabla en la vista Informe. ¿Es eso cierto?

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors