Table.TransformColumns
Sintaxe
Table.TransformColumns(table as table, transformOperations as list, optional defaultTransformation as nullable function, optional missingField as nullable number) as table
Acerca de
Transforma aplicando cada operação de coluna listada em transformOperations
(onde o formato é { nome da coluna, transformação } ou { nome da coluna, transformação, novo tipo de table
coluna }). Se a for especificado, ele será aplicado a defaultTransformation
todas as colunas não listadas em transformOperations
. Se uma coluna listada não transformOperations
existir, uma exceção será lançada, a menos que o parâmetro missingField
opcional especifique uma alternativa (por exemplo, MissingField.UseNull ou MissingField.Ignore).
Exemplo 1
Converta os valores de texto na coluna [A] em valores numéricos e os valores numéricos na coluna [B] em valores de texto.
Utilização
Table.TransformColumns(
Table.FromRecords({
[A = "1", B = 2],
[A = "5", B = 10]
}),
{
{"A", Number.FromText},
{"B", Text.From}
}
)
Saída
Table.FromRecords({
[A = 1, B = "2"],
[A = 5, B = "10"]
})
Exemplo 2
Converta os valores numéricos na coluna ausente [X] em valores de texto, ignorando colunas que não existem.
Utilização
Table.TransformColumns(
Table.FromRecords({
[A = "1", B = 2],
[A = "5", B = 10]
}),
{"X", Number.FromText},
null,
MissingField.Ignore
)
Saída
Table.FromRecords({
[A = "1", B = 2],
[A = "5", B = 10]
})
Exemplo 3
Converta os valores numéricos na coluna ausente [X] em valores de texto, padronizando para nulo em colunas que não existem.
Utilização
Table.TransformColumns(
Table.FromRecords({
[A = "1", B = 2],
[A = "5", B = 10]
}),
{"X", Number.FromText},
null,
MissingField.UseNull
)
Saída
Table.FromRecords({
[A = "1", B = 2, X = null],
[A = "5", B = 10, X = null]
})
Exemplo 4
Incremente os valores numéricos na coluna [B] e converta-os em valores de texto e converta todas as outras colunas em números.
Utilização
Table.TransformColumns(
Table.FromRecords({
[A = "1", B = 2],
[A = "5", B = 10]
}),
{"B", each Text.From(_ + 1), type text},
Number.FromText
)
Saída
Table.FromRecords({
[A = 1, B = "3"],
[A = 5, B = "11"]
})