La función Table.FillDown devuelve una tabla tras rellenar los valores nulos con el anterior valor no nulo.
Table.FillDown(
table as table,
columns as list
) as table
- table: tabla a devolver tras rellenar los valores nulos
- columns: columnas cuyos valores nulos se desea rellenar
Los nulos que se encuentren en la primera fila de la tabla no se rellenan al no existir un valor anterior no nulo.
Para probar esta función partimos de la siguiente tabla:
let
table = Table.FromRecords(
{
[id = null, storage = 5, sales = 5],
[id = 2, storage = null, sales = 7],
[id = 3, storage = 8, sales = 8],
[id = 4, storage = 9, sales = null],
[id = 5, storage = 14, sales = null]
}
)
in
table
Como vemos, todas las columnas tienen valores nulos. Si quisiéramos rellenar los nulos de las columnas "storage" y "sales" con los anteriores valores no nulos, podríamos hacerlo con el siguiente código:
let
table = Table.FromRecords(
{
[id = null, storage = 5, sales = 5],
[id = 2, storage = null, sales = 7],
[id = 3, storage = 8, sales = 8],
[id = 4, storage = 9, sales = null],
[id = 5, storage = 14, sales = null]
}
)
in
Table.FillDown(
table,
{"storage", "sales"}
)
Los valores nulos de la primera fila no se rellenan. Así, si ejecutamos la función de forma que se rellenen las columna "id" y "sales", vemos que el nulo de la columna "id" se mantiene:
let
table = Table.FromRecords(
{
[id = null, storage = 5, sales = 5],
[id = 2, storage = null, sales = 7],
[id = 3, storage = 8, sales = 8],
[id = 4, storage = 9, sales = null],
[id = 5, storage = 14, sales = null]
}
)
in
Table.FillDown(
table,
{"id", "sales"}
)