Freigeben über


Table.TransformColumns

Syntax

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

Info

Transformiert table durch Anwendung jedes Spaltenvorgangs, der in transformOperations aufgeführt ist (wobei das Format { spaltenname, transformation } bzw. { spaltenname, transformation, neuer spaltentyp } lautet). Wenn ein defaultTransformation-Wert angegeben wird, wird er auf alle Spalten angewendet, die nicht in transformOperationsaufgeführt sind. Wenn keine Spalte in transformOperations vorhanden ist, wird eine Ausnahme ausgelöst, es sei denn, der optionale Parameter missingField gibt eine Alternative an (zum Beispiel MissingField.UseNull oder MissingField.Ignore).

Beispiel 1

Konvertieren Sie die Textwerte in Spalte [A] in Zahlenwerte und die Zahlenwerte in Spalte [B] in Textwerte.

Verwendung

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

Ausgabe

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

Beispiel 2

Konvertieren Sie die numerischen Werte in der fehlenden Spalte [X] in Textwerte. Dabei werden Spalten ignoriert, die nicht vorhanden sind.

Verwendung

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

Ausgabe

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

Beispiel 3

Konvertieren Sie die numerischen Werte in der fehlenden Spalte [X] in Textwerte mit dem Standardwert NULL für Spalten, die nicht vorhanden sind.

Verwendung

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

Ausgabe

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

Beispiel 4

Erhöhen Sie die Zahlenwerte in Spalte [B], konvertieren Sie sie in Textwerte, und konvertieren Sie alle anderen Spalten in Zahlen.

Verwendung

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

Ausgabe

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