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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Syndicate_Admin
Administrator
Administrator

M ayuda

Hola

Necesito mostrar los valores de la columna2 en la nueva columna (columna3) basándome en la búsqueda del valor máximo de la columna1 usando el código M.

He aquí un ejemplo:

Columna1 Columna2 Columna3

1 23 50

2 67 50

5 50 50

¿Es posible sin crear varias columnas?

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

Hola @PBInewbie21 ,

Lamento haber pasado por alto la regla de negocios.

Por supuesto, esto hace que la fórmula sea un poco más compleja. La siguiente captura de pantalla muestra el resultado esperado:

image.png

La parte esencial de la consulta que crea la columna personalizada "Columna3":

    #"Added Custom" = Table.AddColumn(#"Changed Type", "Custom3", 
    
        each  
            Table.SelectColumns(
                Table.SelectRows(#"Changed Type"
                    , each [Column1] = List.Max( #"Changed Type"[Column1] )
                )
                , {"Column2"}
            ){0}[Column2] //get the value from Column2 in the first row     

        // explicit type of custom column 3
        , Int64.Type
    )
in
    #"Added Custom"


Con suerte, esto ahora proporciona lo que necesita para enfrentar su desafío.

Saludos

Tom

View solution in original post

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

¿ @PBInewbie21

¿Has resuelto esta pregunta con la ayuda de TomMartens? Si ha resuelto la pregunta, puede aceptar la respuesta útil como la solución o compartir su método y aceptarlo como solución, gracias por su contribución para mejorar Power BI. ❤️

Si necesita más ayuda, por favor hágamelo saber.

Saludos

Equipo de soporte de la comunidad _Tang

Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

Syndicate_Admin
Administrator
Administrator

Hola @PBInewbie21 ,

Lamento haber pasado por alto la regla de negocios.

Por supuesto, esto hace que la fórmula sea un poco más compleja. La siguiente captura de pantalla muestra el resultado esperado:

image.png

La parte esencial de la consulta que crea la columna personalizada "Columna3":

    #"Added Custom" = Table.AddColumn(#"Changed Type", "Custom3", 
    
        each  
            Table.SelectColumns(
                Table.SelectRows(#"Changed Type"
                    , each [Column1] = List.Max( #"Changed Type"[Column1] )
                )
                , {"Column2"}
            ){0}[Column2] //get the value from Column2 in the first row     

        // explicit type of custom column 3
        , Int64.Type
    )
in
    #"Added Custom"


Con suerte, esto ahora proporciona lo que necesita para enfrentar su desafío.

Saludos

Tom

Syndicate_Admin
Administrator
Administrator

Hola @PBInewbie21 ,

lo que está pidiendo requiere cierta comprensión del funcionamiento genérico (por no decir intrincado) de la transformación de datos dentro de Power Query. Para una comprensión más profunda te recomiendo los artículos que encuentras aquí:
Power Query M Primer (parte 1): Introducción, expresiones simples y dejar | Ben Gribaudo

Aquí, es bueno saber que básicamente se realizan transformaciones de datos para cada fila. Esto significa que la entrada para un paso posterior es la tabla anterior, cada fila de la tabla anterior se transmitirá a la tarea de transformación de datos del paso.

Ahora su requisito es crear una columna que "repita" el valor MAX de una determinada columna, el problema es acceder a la columna completa de la tabla anterior para encontrar el valor MAX. Hacer referencia a una columna completa requiere usar el nombre de la tabla (el nombre del paso anterior) en lugar del valor de la fila actual.
La siguiente captura de pantalla muestra de lo que estoy hablando:
image.png

La fórmula

List.Max(#"Changed Type"[Column2])


Con suerte, esto proporciona lo que está buscando.

Saludos

Tom

Gracias por su respuesta @TomMartens pero si hago Max de columna2 entonces traigo la respuesta 67 en la columna3 pero necesito 50 porque el valor máximo en la columna1 es 5

Helpful resources

Announcements
RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.