Jaa


Table.TransformColumns

Syntaksi

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

Noin

Muuntaa table ottamalla käyttöön jokaisen transformOperations luetellun saraketoiminnon (jossa muoto on { sarakkeen nimi, muunnos } tai { sarakkeen nimi, muunnos, uusi saraketyyppi }). Jos defaultTransformation on määritetty, sitä käytetään kaikissa sarakkeissa, joita ei ole lueteltu transformOperations. Jos transformOperations luettelossa olevaa saraketta ei ole, palautetaan poikkeus, ellei valinnainen parametrin missingField määritä vaihtoehtoa (esimerkiksi MissingField.UseNull tai MissingField.Ignore).

Esimerkki 1

Muunna sarakkeen [A] tekstiarvot lukuarvoiksi ja sarakkeen [B] lukuarvot tekstiarvoiksi.

käyttö

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

Esimerkki 2

Muunna puuttuvan sarakkeen [X] lukuarvot tekstiarvoiksi ohittaen sarakkeet, joita ei ole olemassa.

käyttö

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

Esimerkki 3

Muunna puuttuvan sarakkeen [X] lukuarvot tekstiarvoiksi ja käytä oletuksena tyhjäarvoa sarakkeissa, joita ei ole olemassa.

käyttö

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

Esimerkki 4

Lisää sarakkeen [B] lukuarvoja ja muunna ne tekstiarvoiksi ja muunna kaikki muut sarakkeet luvuiksi.

käyttö

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