Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Tengo un conjunto de datos similar al siguiente:
Evento | Empezar | Final |
Abc | 1/1/2020 | 1/30/2020 |
Def | 1/15/2020 | 2/14/2020 |
Ghi | 3/1/2020 | 3/30/2020 |
Jkl | 3/5/2020 | 4/4/2020 |
Mno | 3/17/2020 | 4/16/2020 |
Pqr | 4/1/2020 | 4/30/2020 |
Quiero averiguar el número de veces que un intervalo de fechas cae en o entre las fechas de inicio y finalización de otros eventos en el conjunto de datos.
En este escenario, me gustaría crear una tabla que muestre lo siguiente:
Mes | Traslapos |
1 | 2 |
2 | 0 |
3 | 3 |
4 | 3 |
Solved! Go to Solution.
Estoy pensando en una variación de Entradas Abiertas. https://community.powerbi.com/t5/Quick-Measures-Gallery/Open-Tickets/m-p/409364#M147
Pero tienes que fideos en él.
Hola @dehmos27 ,
¿El campo"Mi"es el número de mes? ¿Y cuál es la lógica de cálculo del campo "Traslapos"?
Saludos
Rena
@dehmos27 , Consulte si este blog puede ayudarle
Pruebe esto en Power Query. Mira las fechas y ve cuántas hay entre los otros rangos. A continuación, resta 1 de ese resultado porque siempre se superpone consigo mismo.
Devuelve esta tabla:
La función clave es la siguiente:
let
varStart = [Start],
varEnd = [Final]
in
Table.RowCount(
Table.SelectRows(
#"Changed Type",
each (varStart >= [Start]
and varStart <= [Final] )
or (varEnd >= [Start]
and varEnd <= [Final] )
)
) -1
El código completo está a continuación. Ponga eso en una consulta en blanco:
1) En Power Query, seleccione Nuevo origen y, a continuación, Consulta en blanco
2) En la cinta inicio, seleccione el botón "Editor avanzado"
3) Retire todo lo que ve, luego pegue el código M que le he dado en ese cuadro.
4) Pulse Hecho
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WckxKVtJRMtQ31DcyMDIAM40NIOxYnWgll9Q0iLQpTN5I39AEIe+ekQkUM0ZoN0bR7pWdAxaD6zbRR9Lsm5cP0WyOkDY0Q8gHFBZBxBDScMNjAQ==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [Event = _t, Start = _t, Final = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Event", type text}, {"Start", type date}, {"Final", type date}}),
#"Added Custom" = Table.AddColumn(#"Changed Type", "Custom", each let
varStart = [Start],
varEnd = [Final]
in
Table.RowCount(
Table.SelectRows(
#"Changed Type",
each (varStart >= [Start]
and varStart <= [Final] )
or (varEnd >= [Start]
and varEnd <= [Final] )
)
) -1)
in
#"Added Custom"
DAX is for Analysis. Power Query is for Data Modeling
Proud to be a Super User!
MCSA: BI ReportingAquí está lo mismo usando una medida. Creo que tendrías problemas de rendimiento con millones de discos con esto, o incluso decenas de miles posiblemente, pero mira cómo funciona para ti. Estoy en un apreto en cuanto a si Power Query o DAX es el mejor lugar para esto. Depende de su caso de uso. La columna [Personalizado] es lo que se generó a partir de Power Query y puede ver que los resultados son los mismos.
Overlap Count =
VAR StartDate =
MAX( 'Table'[Start] )
VAR EndDate =
MAX( 'Table'[Final] )
VAR Overlaps =
// returns table with all rows that have overlaps
FILTER(
ALL( 'Table' ),
( StartDate >= 'Table'[Start]
&& StartDate <= 'Table'[Final] )
|| ( EndDate >= 'Table'[Start]
&& EndDate <= 'Table'[Final] )
)
VAR CountOverLaps =
/* Counts the records in the OverLaps table and subtracts one since there is
always one match when the record matches itself. */
COUNTROWS( Overlaps ) - 1
RETURN
CountOverLaps
DAX is for Analysis. Power Query is for Data Modeling
Proud to be a Super User!
MCSA: BI ReportingEstoy pensando en una variación de Entradas Abiertas. https://community.powerbi.com/t5/Quick-Measures-Gallery/Open-Tickets/m-p/409364#M147
Pero tienes que fideos en él.
No estoy totalmente seguro de haber entendido su petición, pero creo que la columna Mi en su visual fue para Mes-Año. Si no, tal vez pueda adaptar este enfoque. Esto supone que tiene una tabla Date con una columna MonthYear y no hay ninguna relación con la tabla Events con los datos de ejemplo.
Haga una tabla con la columna Date[MonthYear] y esta medida
Si esto funciona para usted, por favor márquelo como la solución. Los felicitaciones también son apreciados. Por favor, avísame si no.
saludos
palmadita
To learn more about Power BI, follow me on Twitter or subscribe on YouTube.
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
2 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
2 | |
2 | |
1 |