Table.TransformColumns
Syntax
Table.TransformColumns(table as table, transformOperations as list, optional defaultTransformation as nullable function, optional missingField as nullable number) as table
Asi
Transformuje table
použitím každé operace sloupce uvedené v transformOperations
(kde formát je { název sloupce, transformace } nebo { název sloupce, transformace, nový typ sloupce }). Pokud je zadán defaultTransformation
, použije se u všech sloupců, které nejsou uvedeny v transformOperations
. Pokud sloupec uvedený v transformOperations
neexistuje, vyvolá se výjimka, pokud volitelný parametr missingField
neurčí alternativu (například MissingField.UseNull nebo MissingField.Ignore).
Příklad 1
Převeďte textové hodnoty ve sloupci [A] na číselné hodnoty a číselné hodnoty ve sloupci [B] na textové hodnoty.
Použití
Table.TransformColumns(
Table.FromRecords({
[A = "1", B = 2],
[A = "5", B = 10]
}),
{
{"A", Number.FromText},
{"B", Text.From}
}
)
výstupní
Table.FromRecords({
[A = 1, B = "2"],
[A = 5, B = "10"]
})
Příklad 2
Převeďte číselné hodnoty ve chybějícím sloupci [X] na textové hodnoty bez ohledu na sloupce, které neexistují.
využití
Table.TransformColumns(
Table.FromRecords({
[A = "1", B = 2],
[A = "5", B = 10]
}),
{"X", Number.FromText},
null,
MissingField.Ignore
)
výstupní
Table.FromRecords({
[A = "1", B = 2],
[A = "5", B = 10]
})
Příklad 3
Převeďte číselné hodnoty ve chybějícím sloupci [X] na textové hodnoty, výchozí hodnota je null u sloupců, které neexistují.
Využití
Table.TransformColumns(
Table.FromRecords({
[A = "1", B = 2],
[A = "5", B = 10]
}),
{"X", Number.FromText},
null,
MissingField.UseNull
)
výstup
Table.FromRecords({
[A = "1", B = 2, X = null],
[A = "5", B = 10, X = null]
})
Příklad 4
Zvýší počet hodnot ve sloupci [B] a převede je na textové hodnoty a převede všechny ostatní sloupce na čísla.
využití
Table.TransformColumns(
Table.FromRecords({
[A = "1", B = 2],
[A = "5", B = 10]
}),
{"B", each Text.From(_ + 1), type text},
Number.FromText
)
výstupní
Table.FromRecords({
[A = 1, B = "3"],
[A = 5, B = "11"]
})