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

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

Reply
Syndicate_Admin
Administrator
Administrator

Comparación con el registro anterior

Hola

Soy nuevo con DAX y mi lógica sigue siendo con Excel.

Mediante la columna calculada con DAX (no en Power Query), ¿cómo puedo comprobar mi registro actual con el registro anterior?

DatosResultado deseado

A

1
A1
B2
B2
B2
C3
C3
D4
E5
F6
F6

La lógica que quiero aquí es que si soy el 1er registro, asigne el valor 1, de lo contrario, verifique con el registro anterior, y si el registro anterior es el mismo que el registro actual, tome el valor de asignación anterior, de lo contrario, agregue 1

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

Arrepentido... No lo entiendo del todo.

Incluso si tuviera que agregar una columna de índice (supongo que comenzando desde 0), ¿en qué fórmula la uso?

¿Está en VAR __PreviousData = MAXX(FILTER('Table','Table'[DATA] < BEFORE('Table'[DATA])),[INDEX])?

Otra vez. ¿Cómo asigno el valor 1 al primer registro de la columna 'Resultado deseado'?

Para que quede claro, esta es la lógica que tenía con Excel.

  1. Ponga un valor 1 en el primer registro en la columna 'Resultado deseado'.
  2. Añadir un contador: Añadir un contador a la columna 'Resultado deseado' del registro anterior de [RESULTADO DESEADO] SI y sólo si cuando el registro actual [DATOS] no es el mismo que el registro anterior [DATOS], es decir, Utilice el valor de fila anterior del 'Resultado deseado' + 1 Si el registro actual [DATOS] NO es el mismo que el registro anterior de los [DATOS].
  3. No agregar contador: Tome el valor de la columna 'Resultado deseado' del registro anterior de [RESULTADO DESEADO] SI si y solo si cuando el registro actual [DATOS] es el mismo que el registro anterior [DATOS], es decir, Utilice el valor de la fila anterior del 'Resultado deseado' Si el registro actual [DATOS] es el mismo que el registro anterior de [DATOS].

Syndicate_Admin
Administrator
Administrator

@JustDavid Tendrá que agregar un índice a su tabla para poder informar a DAX qué es "antes".

Syndicate_Admin
Administrator
Administrator

Gracias por la respuesta @Greg_Deckler .

Tengo preguntas sobre su fórmula DAX.

Usando mi tabla anterior como ejemplo,

  1. ¿Este VAR __Current = [Resultado deseado] devolvería el valor actual? Si es así, mi pregunta sería, ¿cómo sabe asignar un valor 1 al primer registro y luego quedarse o agregar un contador?
  2. VAR __PreviousDate = MAXX(FILTER('Table','Table'[Date] < BEFORE('Table'[Date])),[Date]). ¿Supongo que su 'Fecha' aquí se refiere a mi columna 'DATOS'? Y si es así, ¿MAXX funcionaría con el tipo de datos de cadena?

Syndicate_Admin
Administrator
Administrator

@JustDavid Vea mi artículo sobre el tiempo medio entre fallas (MTBF) que usa ANTES: http://community.powerbi.com/t5/Community-Blog/Mean-Time-Between-Failure-MTBF-and-Power-BI/ba-p/3395....
El patrón básico es:
Columna =
VAR __Current = [Valor]
VAR __PreviousDate = MAXX(FILTER('Tabla','Tabla'[Fecha] < ANTERIOR('Tabla'[Fecha])),[Fecha])

VAR __Previous = MAXX(FILTER('Tabla',[Fecha]=__PreviousDate),[Valor])
DEVOLUCIÓN
__Current - __Previous

Helpful resources

Announcements
July 2024 Power BI Update

Power BI Monthly Update - July 2024

Check out the July 2024 Power BI update to learn about new features.

PBI_Carousel_NL_June

Fabric Community Update - June 2024

Get the latest Fabric updates from Build 2024, key Skills Challenge voucher deadlines, top blogs, forum posts, and product ideas.

Top Solution Authors