cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Syndicate_Admin
Administrator
Administrator

Filtre las 3 filas principales en función de la misma marca de tiempo

Hola

Soy nuevo en el power bi, y estaría muy agradecido si alguien pudiera ayudarme.

Tengo tabla con marca de tiempo de 3 columnas, procedimiento, average_cpu.

kj89_2-1635361645634.png

Cada vez que se generan datos, se marca con una marca de tiempo. Las filas ya están ordenadas por average_cpu,pero en el resultado me gustaría obtener una nueva tabla con solo las primeras 3 filas en cada marca de tiempo

kj89_0-1635363466071.png

Gracias de antemano por su tiempo y ayuda.

Saludos, Kristaps

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

Realice un grupo por en la columna de marca de tiempo con una nueva columna que mantenga todas las filas para cada marca de tiempo separada.

AlexisOlson_0-1635363816374.png

Esto generará un paso con código que se ve así:

= Table.Group(#"Changed Type", {"timestamp"}, {{"Top3", each _, type table}})

Queremos modificar esto ligeramente usando Table.MaxN:

= Table.Group(#"Changed Type", {"timestamp"}, {{"Top3", each Table.MaxN(_, "avergae_cpu", 3), type table}})

Todo lo que queda es expandir la nueva columna de la tabla Top3 haciendo clic en el botón expandir en la esquina superior derecha y elegir qué columnas desea.

View solution in original post

3 REPLIES 3
Syndicate_Admin
Administrator
Administrator

No @kj89,

Esta es la misma solución que @AlexisOlson ha ofrecido, solo estoy publicando esto ya que ya había comenzado a trabajar en ella.

PBIX adjunto.

Esencialmente, agregar un índice a la tabla agrupada y mantener valores donde el índice es menor que 3.

Syndicate_Admin
Administrator
Administrator

@kj89

Cree una nueva tabla con el código siguiente:

FILTER(
    ADDCOLUMNS (
        Table1,
        "Top3",
            TABLE1[avergae, cpu]
                IN SELECTCOLUMNS (
                    TOPN (
                        3,
                        ALLEXCEPT ( Table1, table1[timestamp] ),
                        CALCULATE ( MAX ( table1[avergae, cpu] ) )
                    ),
                    Table1[avergae, cpu]
                )
    ),
    [Top3] = TRUE ()
)
Syndicate_Admin
Administrator
Administrator

Realice un grupo por en la columna de marca de tiempo con una nueva columna que mantenga todas las filas para cada marca de tiempo separada.

AlexisOlson_0-1635363816374.png

Esto generará un paso con código que se ve así:

= Table.Group(#"Changed Type", {"timestamp"}, {{"Top3", each _, type table}})

Queremos modificar esto ligeramente usando Table.MaxN:

= Table.Group(#"Changed Type", {"timestamp"}, {{"Top3", each Table.MaxN(_, "avergae_cpu", 3), type table}})

Todo lo que queda es expandir la nueva columna de la tabla Top3 haciendo clic en el botón expandir en la esquina superior derecha y elegir qué columnas desea.

View solution in original post

Helpful resources

Announcements
UG GA Amplification 768x460.png

Launching new user group features

Learn how to create your own user groups today!

November Power BI Update 768x460.png

Check it Out!

Click here to read more about the November 2021 Updates!

M365 768x460.jpg

Microsoft 365 Collaboration Conference | December 7–9, 2021

Join us, in-person, December 7–9 in Las Vegas, for the largest gathering of the Microsoft community in the world.