¿Cómo puedo contar fechas discontinuadas en PowerBI?
Quiero contar las fechas discontinuadas por ID con el filtro “FilterByValue” en 1.
Lo que quiero decir con fechas discontinuadas.
– 04.01.2021
– 05.01.2021
– 06.01.2021
– 08.01.2021
La fecha 07.01.2021 estaría desaparecida para ser una fecha continua cuando falta un día entre las fechas.
Las fechas también deben ser distintas y dentro de los últimos 90 días.
El RowID es solo para fines de explicación.
RowID | ID | FilterByValue | Fecha |
---|---|---|---|
1 | 1 | 1 | Lunes, 4 de enero de 2021 |
2 | 1 | 1 | Martes, 5 de enero de 2021 |
3 | 1 | 1 | Martes, 5 de enero de 2021 |
4 | 1 | 1 | Miércoles, 6 de enero de 2021 |
5 | 1 | 1 | Lunes, 11 de enero de 2021 |
6 | 1 | 99 | Viernes, 8 de enero de 2021 |
7 | 2 | 1 | Martes, 9 de febrero de 2021 |
8 | 2 | 1 | Miércoles, 10 de febrero de 2021 |
9 | 2 | 1 | Jueves, 11 de marzo de 2021 |
10 | 2 | 1 | Viernes, 12 de marzo de 2021 |
11 | 2 | 1 | Lunes, 15 de marzo de 2021 |
12 | 2 | 1 | Martes, 16 de marzo de 2021 |
13 | 2 | 99 | Domingo, 14 de marzo de 2021 |
14 | 2 | 1 | Miércoles, 14 de abril de 2021 |
Lo que quiero lograr:
RowID | ID | CountDiscontinuedDates |
---|---|---|
1 | 1 | 2 |
2 | 2 | 4 |
Lo que intenté, creo que es un enfoque malo/no útil:
discontinuesDates = CONTAR.SI.CONJUNTO(FILTRAR(NombreTabla, [ID]=1 && NombreTabla[Fecha] > (HOY()-90) && O (SUMAR.DIAS(NombreTabla[Fecha] = (NombreTabla[Datum],1,DÍA), SUMAR.DIAS(NombreTabla[Fecha] = (NombreTabla[Datum],-1,DÍA) ) && NombreTabla[ID] = LLAMADA_ANTERIOR(NombreTabla[ID]) && NombreTabla[Fecha] = NombreTabla[Fecha] ), NombreTabla[ID]))
discontinuesDates = CALCULAR(CONTAR(NombreTabla[ID]), FILTRAR(NombreTabla, NombreTabla[FilterByValue]=34 && NombreTabla[ID] = LLAMADA_ANTERIOR( NombreTabla[ID]) && SUMAR.DIAS( NombreTabla[Fecha],1,DÍA) != LLAMADA_ANTERIOR( NombreTabla[Fecha])) )
davy.ai
Para contar las fechas discontinuas por ID con el filtro “FilterByValue” en 1, puedes utilizar la fórmula DAX siguiente:
Explicación:
–
CONTARX
cuenta el número de filas en la tabla filtrada.–
FILTRAR
filtra la tabla para incluir solo las filas dondeFilterByValue
es 1, elID
coincide con el valor deID
actual y laFecha
está dentro de los últimos 90 días.– La sentencia
SI
calcula si la diferencia entre la fecha actual y la fecha anterior es mayor a 1 día, devuelve 1 (discontinuado), de lo contrario devuelve blanco.– La tabla resultante se cuenta para obtener el número total de fechas discontinuas por ID.
Nota: La fórmula asume que no hay fechas duplicadas para cada ID. Si existen duplicados, es posible que debas modificar la fórmula en consecuencia.