Join us for an expert-led overview of the tools and concepts you'll need to pass exam PL-300. The first session starts on June 11th. See you there!
Get registeredPower BI is turning 10! Let’s celebrate together with dataviz contests, interactive sessions, and giveaways. Register now.
Hola, he tenido una búsqueda y he encontrado algunas soluciones de countifs para powerBI, pero ninguna que pueda ver que sea una solución para mi objetivo, así que espero que somone pueda compartir una posible solución.
Resumen: Necesito marcar las filas true o false si son nuevas en función de una coincidencia de criterios variables de 2 columnas.
La fórmula de Excel que uso es bastante simple;
=COUNTIFS(A:A,"<"&A2,C:C,$C 2)=0
Por lo tanto, si se encuentra una fila donde la Fecha en la columna A es menor que la fecha de la fila actual y el HostOrderID es el mismo que la fila actual HostOrderID, el registro no es nuevo como aparece en las filas anteriores (el recuento es > 0) y está marcado como FALSE, de lo contrario es nuevo (recuento = 0) y marcado como TRUE.
He intentado esto, pero vuelve a ser cierto para todas las filas.
Ejemplo de conjunto de datos;
A | B | C | |
1 | Fecha | Nuevas relaciones públicas | HostOrderId |
2 | 8/09/2021 | VERDADERO | PldOrd/16877001// |
3 | 9/09/2021 | FALSO | PldOrd/16877001// |
4 | 10/09/2021 | FALSO | PldOrd/16877001// |
5 | 11/09/2021 | FALSO | PldOrd/16877001// |
6 | 12/09/2021 | FALSO | PldOrd/16877001// |
7 | 13/09/2021 | FALSO | PldOrd/16877001// |
8 | 14/09/2021 | FALSO | PldOrd/16877001// |
9 | 8/09/2021 | VERDADERO | PldOrd/21105414// |
10 | 9/09/2021 | FALSO | PldOrd/21105414// |
11 | 10/09/2021 | FALSO | PldOrd/21105414// |
12 | 11/09/2021 | FALSO | PldOrd/21105414// |
13 | 12/09/2021 | FALSO | PldOrd/21105414// |
14 | 13/09/2021 | FALSO | PldOrd/21105414// |
15 | 14/09/2021 | FALSO | PldOrd/21105414// |
Gracias de antemano por cualquier consejo ofrecido 🙂
Saludos
Andrew
Solved! Go to Solution.
@alchem1st , una nueva columna como
if([Date] < minx(filter(Table,[HostOrderId] =earlier([HostOrderId]) ),[Date]) , True(), false() )
o
if([Date]<= minx(filter(Table,[HostOrderId] =earlier([HostOrderId]) ),[Date]) , True(), false() )
Cambio según la necesidad
Gracias @amitchandak y @TheoC por sus prontas respuestas. Su ayuda es muy apreciada!!
Hay @alchem1st
Puede utilizar algo como la siguiente columna calculada.
col_Date =
VAR _CurrentHost = 'Table'[HostOrderId]
VAR _Date = 'Tabla'[Fecha]
VAR _FirstDate = MIN ( 'Tabla'[Fecha] )
VAR _CountDate = COUNTROWS ( FILTER ( ALL ( 'Table' ) , _Date = 'Table'[Date] ) )
VAR _CountHost = COUNTROWS ( FILTER ( ALL ( 'Table' ) , _CurrentHost = 'Table'[HostOrderId] ) )
DEVOLUCIÓN
SI ( _CountDate > 1 && _CountHost > 1 && _Date = _FirstDate , VERDADERO , FALSO )
Espero que ayude a 🙂
Theo
PD - mi mal, después de publicar esto noté @amitchandak también tuvo una respuesta. Lo tuve en borrador por un tiempo. ¡Disculpas! Por favor, dale la solución a @amitchandak si él te da lo que quieres.
@alchem1st , una nueva columna como
if([Date] < minx(filter(Table,[HostOrderId] =earlier([HostOrderId]) ),[Date]) , True(), false() )
o
if([Date]<= minx(filter(Table,[HostOrderId] =earlier([HostOrderId]) ),[Date]) , True(), false() )
Cambio según la necesidad