Del via


Table.TransformColumns

Syntaks

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

Omtrent

Transformerer table ved at anvende hver kolonnehandling, der er angivet i transformOperations (hvor formatet er { kolonnenavn, transformation } eller { kolonnenavn, transformation, ny kolonnetype }). Hvis der er angivet en defaultTransformation, anvendes den på alle kolonner, der ikke er angivet i transformOperations. Hvis en kolonne, der er angivet i transformOperations, ikke findes, udløses der en undtagelse, medmindre den valgfri parameter missingField angiver et alternativ (f.eks. MissingField.UseNull eller MissingField.Ignore).

Eksempel 1

Konvertér tekstværdierne i kolonnen [A] til talværdier, og talværdierne i kolonnen [B] til tekstværdier.

brug

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

output

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

Eksempel 2

Konvertér talværdierne i den manglende kolonne [X] til tekstværdier, og ignorer kolonner, der ikke findes.

brug

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

output

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

Eksempel 3

Konvertér talværdierne i den manglende kolonne [X] til tekstværdier, der som standard er null for kolonner, der ikke findes.

brug

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

output

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

Eksempel 4

Forøg talværdierne i kolonnen [B], og konvertér dem til tekstværdier, og konvertér alle andre kolonner til tal.

brug

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

output

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