Muistiinpano
Tälle sivulle pääsy edellyttää valtuutusta. Voit yrittää kirjautua sisään tai vaihtaa hakemistoja.
Tälle sivulle pääsy edellyttää valtuutusta. Voit yrittää vaihtaa hakemistoja.
Syntaksi
Table.TransformColumns(
table as table,
transformOperations as list,
optional defaultTransformation as nullable function,
optional missingField as nullable number
) as table
Noin
Muuntaa määritetyn taulukon käyttämällä kutakin saraketoimintoa luettelossa.
-
table: Muunnettava taulukko. -
transformOperations: Taulukkoon tehtävät muunnokset. Tämän parametrin muoto on joko { sarakkeen nimi, muunnos } tai { sarakkeen nimi, muunnos, uusi saraketyyppi }. -
defaultTransformation: (Valinnainen) Oletusmuunnos, jota käytetään kaikissa sarakkeissa, joita ei ole lueteltu .transformOperations -
missingField: (Valinnainen) Määrittää puuttuvien arvojen odotetun toiminnon. Jos saraketta, joka on lueteltu kohdassatransformOperations, luodaan poikkeus (MissingField.Error), ellei tämä parametri määritä vaihtoehtoa. Käytä jotakin seuraavista arvoista:-
MissingField.UseNull: Puuttuvat kentät sisällytetäännullarvoihin. -
MissingField.Ignore: Puuttuvat kentät ohitetaan.
-
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 oletuksena null 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 3
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"]
})
Esimerkki 4
Siirrä Yhdysvaltain juhlapäivänä tapahtuvat ajoitetut ylläpitotehtävät seuraavaan päivään tai, jos loma on perjantaina, seuraavaan maanantaihin.
käyttö
let
MaintenanceSchedule = #table(type table [Task = text, Date = date],
{
{"HVAC Check", #date(2025, 7, 10)}, // Not a holiday
{"Window Washing", #date(2025, 9, 1)}, // Labor Day
{"Fire Drill", #date(2025, 9, 17)}, // Not a holiday
{"Light Replacement", #date(2025, 11, 27)} // Thanksgiving
}),
USHolidays = {
#date(2025, 1, 1), // New Year's Day
#date(2025, 7, 4), // Independence Day
#date(2025, 9, 1), // Labor Day
#date(2025, 11, 27), // Thanksgiving
#date(2025, 12, 25) // Christmas
},
AdjustedSchedule = Table.TransformColumns(
MaintenanceSchedule,
{{"Date", each if List.Contains(USHolidays, _) then
if Date.DayOfWeek(_, Day.Sunday) = 5 then
Date.AddDays(_, 3) // Friday to Monday
else
Date.AddDays(_, 1) // Other to next day
else _, type date}}
)
in
AdjustedSchedule
Output
#table(type table[Task = text, Date = date],
{
{"HVAC Check", #date(2025, 7, 10)},
{"Window Washing", #date(2025, 9, 2)},
{"Fire Drill", #date(2025, 9, 17)},
{"Light Replacement", #date(2025, 11, 28)}
})