Udostępnij za pośrednictwem


Table.TransformColumns

Składnia

Table.TransformColumns(table as table, transformOperations as list, optional defaultTransformation as nullable function, optional missingField as nullable number) as table

Informacje

table Przekształca, stosując każdą operację kolumny wymienioną w tabeli transformOperations (gdzie format to { nazwa kolumny, przekształcenie } lub { nazwa kolumny, przekształcenie, nowy typ kolumny }). defaultTransformation Jeśli parametr zostanie określony, zostanie zastosowany do wszystkich kolumn, które nie są wymienione w pliku transformOperations. Jeśli kolumna wymieniona w pliku transformOperations nie istnieje, zostanie zgłoszony wyjątek, chyba że opcjonalny parametr missingField określa alternatywę (na przykład MissingField.UseNull lub MissingField.Ignore).

Przykład 1

Przekonwertuj wartości tekstowe w kolumnie [A] na wartości liczbowe, a wartości liczbowe w kolumnie [B] na wartości tekstowe.

Użycie

Table.TransformColumns(
    Table.FromRecords({
        [A = "1", B = 2],
        [A = "5", B = 10]
    }),
    {
        {"A", Number.FromText},
        {"B", Text.From}
    }
)

Wyjście

Table.FromRecords({
    [A = 1, B = "2"],
    [A = 5, B = "10"]
})

Przykład 2

Przekonwertuj wartości liczbowe w brakującej kolumnie [X] na wartości tekstowe, ignorując kolumny, które nie istnieją.

Użycie

Table.TransformColumns(
    Table.FromRecords({
        [A = "1", B = 2],
        [A = "5", B = 10]
    }),
    {"X", Number.FromText},
    null,
    MissingField.Ignore
)

Wyjście

Table.FromRecords({
    [A = "1", B = 2],
    [A = "5", B = 10]
})

Przykład 3

Przekonwertuj wartości liczbowe w brakującej kolumnie [X] na wartości tekstowe, domyślnie na null w kolumnach, które nie istnieją.

Użycie

Table.TransformColumns(
    Table.FromRecords({
        [A = "1", B = 2],
        [A = "5", B = 10]
    }),
    {"X", Number.FromText},
    null,
    MissingField.UseNull
)

Wyjście

Table.FromRecords({
    [A = "1", B = 2, X = null],
    [A = "5", B = 10, X = null]
})

Przykład 4

Zwiększ wartości liczbowe w kolumnie [B] i przekonwertuj je na wartości tekstowe, a następnie przekonwertuj wszystkie pozostałe kolumny na liczby.

Użycie

Table.TransformColumns(
    Table.FromRecords({
        [A = "1", B = 2],
        [A = "5", B = 10]
    }),
    {"B", each Text.From(_ + 1), type text},
    Number.FromText
)

Wyjście

Table.FromRecords({
    [A = 1, B = "3"],
    [A = 5, B = "11"]
})