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

Get certified in Microsoft Fabric—for free! For a limited time, get a free DP-600 exam voucher to use by the end of 2024. Register now

Reply
Anonymous
Not applicable

Cómo convertir la siguiente fila de una base de datos a null en función de la condición

Tengo los siguientes datos en Excel:

Pict1.PNG

Si lo leo en Power Bi, me gustaría conseguir algo como:

Pict2.PNG

Basado en condiciones como:

Si Hum. > 80 y Temp. <- 2 ---> La siguiente fila lo llena con valores NULL

¿Es posible aplicar condiciones al cargar datos? ¿Debo cargar los datos de origen y, después de eso, aplicar condiciones a toda la tabla? ¿Es posible apaciguar las condiciones de toda la tabla a la vez en lugar de columna por columna?

1 ACCEPTED SOLUTION
v-easonf-msft
Community Support
Community Support

Hola , @McMur

Pruebe los pasos como se indica a continuación:

Introduzca la interfaz de "editar consultas"/"transformar datos"

1.Crear columna de índice

70.png

2. haga clic con el botón derecho en "Insertar paso después" para insertar el paso "filtro"

= Table.SelectRows(#"Added Index",each if [Index]=1 then true else  not(#"Added Index"{[Index]-2}[#"Hum."]>=80 and #"Added Index"{[Index]-2}[#"Temp."]<=2))

Se mostrará como se muestra a continuación:

71.png

3. Añadir paso "AddNullrow" :

= List.Generate( () =>
        [RowNumber = Table.RowCount(#"Added Index"), TableResult = FilterTable, Counter = 1],
        each [Counter] <= [RowNumber]+1,
        each [
            TableResult = if let c = [Counter] in Table.RowCount(Table.SelectRows(FilterTable, each [Index] = c)) = 0
                            then Table.InsertRows([TableResult],[Counter]-1, {[#"Hum." = null, #"Temp." = null, #"Vel." = null, Index = [Counter]]})
                            else [TableResult],
            Counter = [Counter] + 1,
            RowNumber = [RowNumber]
        ],
        each [TableResult]
    ){Table.RowCount(#"Added Index")}

Se mostrará como se muestra a continuación:
72.png

Aquí hay una demostración.

PS. Reemplazar con null consumirá mucho rendimiento, y si su fuente de datos es excel, el método no acortará el tiempo de actualización

Saludos
Equipo de Apoyo Comunitario _ Eason
Si este post ayuda,entonces por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

View solution in original post

4 REPLIES 4
v-easonf-msft
Community Support
Community Support

Hola , @McMur

Pruebe los pasos como se indica a continuación:

Introduzca la interfaz de "editar consultas"/"transformar datos"

1.Crear columna de índice

70.png

2. haga clic con el botón derecho en "Insertar paso después" para insertar el paso "filtro"

= Table.SelectRows(#"Added Index",each if [Index]=1 then true else  not(#"Added Index"{[Index]-2}[#"Hum."]>=80 and #"Added Index"{[Index]-2}[#"Temp."]<=2))

Se mostrará como se muestra a continuación:

71.png

3. Añadir paso "AddNullrow" :

= List.Generate( () =>
        [RowNumber = Table.RowCount(#"Added Index"), TableResult = FilterTable, Counter = 1],
        each [Counter] <= [RowNumber]+1,
        each [
            TableResult = if let c = [Counter] in Table.RowCount(Table.SelectRows(FilterTable, each [Index] = c)) = 0
                            then Table.InsertRows([TableResult],[Counter]-1, {[#"Hum." = null, #"Temp." = null, #"Vel." = null, Index = [Counter]]})
                            else [TableResult],
            Counter = [Counter] + 1,
            RowNumber = [RowNumber]
        ],
        each [TableResult]
    ){Table.RowCount(#"Added Index")}

Se mostrará como se muestra a continuación:
72.png

Aquí hay una demostración.

PS. Reemplazar con null consumirá mucho rendimiento, y si su fuente de datos es excel, el método no acortará el tiempo de actualización

Saludos
Equipo de Apoyo Comunitario _ Eason
Si este post ayuda,entonces por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Anonymous
Not applicable

Hola @v-easonf-msft,

Gracias por su respuesta. Sin embargo, soy bastante novato en el lenguaje de programación DAX y estaría agradecido si pudiera sortee algunos comentarios en el paso 3 cuando se agrega el "AddNullrow".

Al mismo tiempo, cuando dices que este enfoque va a consumir mucho rendimiento, ¿es porque quiero convertir esa fila a, específicamente, valores null? ¿Sería el mismo consumo si esa fila se convierte en 0, por ejemplo?

amitchandak
Super User
Super User

Consulte, si estos pueden ayudar

https://community.powerbi.com/t5/Desktop/Filter-row-with-Power-query-m/td-p/571779

https://docs.microsoft.com/en-us/powerquery-m/table-selectrows

Join us as experts from around the world come together to shape the future of data and AI!
At the Microsoft Analytics Community Conference, global leaders and influential voices are stepping up to share their knowledge and help you master the latest in Microsoft Fabric, Copilot, and Purview.
️ November 12th-14th, 2024
 Online Event
Register Here
Anonymous
Not applicable

@amitchandak Gracias por los enlaces. No obstante, quiero convertir a null siguiente fila en función de la condición marcada en la anterior.

He visto que es posible filtrar filas pero en función de sus propios valores. ¿Cómo se puede aplicar el mismo enfoque pero utilizando valores de la fila anterior? ¿Es posible?

Pict3.PNG

Helpful resources

Announcements
November Carousel

Fabric Community Update - November 2024

Find out what's new and trending in the Fabric Community.

Live Sessions with Fabric DB

Be one of the first to start using Fabric Databases

Starting December 3, join live sessions with database experts and the Fabric product team to learn just how easy it is to get started.

Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early Bird pricing ends December 9th.

Nov PBI Update Carousel

Power BI Monthly Update - November 2024

Check out the November 2024 Power BI update to learn about new features.

Top Solution Authors
Top Kudoed Authors