Share via


Table.TransformColumns

Syntax

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

Om

Transformerar table genom att tillämpa varje kolumnåtgärd som anges i transformOperations (där formatet är { kolumnnamn, transformering } eller { kolumnnamn, transformering, ny kolumntyp }). Om en defaultTransformation anges tillämpas den på alla kolumner som inte visas i transformOperations. Om det inte finns någon kolumn i transformOperations genereras ett undantag om inte den valfria parametern missingField anger ett alternativ (till exempel MissingField.UseNull eller MissingField.Ignore).

Exempel 1

Konvertera textvärdena i kolumnen [A] till talvärden och talvärdena i kolumnen [B] till textvärden.

Användning

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"]
})

Exempel 2

Konvertera talvärdena i kolumnen [X] som saknas till textvärden och ignorera kolumner som inte finns.

Användning

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]
})

Exempel 3

Konvertera talvärdena i kolumnen [X] som saknas till textvärden, som standard är null för kolumner som inte finns.

Användning

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]
})

Exempel 4

Öka talvärdena i kolumnen [B] och konvertera dem till textvärden och konvertera alla andra kolumner till tal.

Användning

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"]
})