Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Syntax
Table.TransformColumns(
table as table,
transformOperations as list,
optional defaultTransformation as nullable function,
optional missingField as nullable number
) as table
Om
Transformerar den angivna tabellen genom att tillämpa varje kolumnåtgärd i en lista.
-
table: Tabellen som ska transformeras. -
transformOperations: Transformeringarna som ska göras i tabellen. Formatet för den här parametern är antingen { kolumnnamn, transformering } eller { kolumnnamn, transformering, ny kolumntyp }. -
defaultTransformation: (Valfritt) Standardtransformeringen som tillämpas på alla kolumner som inte visas itransformOperations. -
missingField: (Valfritt) Anger den förväntade åtgärden för saknade värden. Om en kolumn som anges itransformOperationsinte finns genereras ett undantag (MissingField.Error) om inte den här parametern anger ett alternativ. Använd något av följande värden:-
MissingField.UseNull: Alla fält som saknas inkluderas somnullvärden. -
MissingField.Ignore: Alla fält som saknas ignoreras.
-
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}
}
)
utdata
Table.FromRecords({
[A = 1, B = "2"],
[A = 5, B = "10"]
})
Exempel 2
Konvertera talvärdena i den saknade kolumnen [X] till textvärden, med null som standard i kolumner som saknas.
Användning
Table.TransformColumns(
Table.FromRecords({
[A = "1", B = 2],
[A = "5", B = 10]
}),
{"X", Number.FromText},
null,
MissingField.UseNull
)
utdata
Table.FromRecords({
[A = "1", B = 2, X = null],
[A = "5", B = 10, X = null]
})
Exempel 3
Ö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
)
utdata
Table.FromRecords({
[A = 1, B = "3"],
[A = 5, B = "11"]
})
Exempel 4
Flytta schemalagda underhållsaktiviteter som inträffar på en amerikansk semester till nästa dag eller, om semestern inträffar på en fredag, till nästa måndag.
Användning
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
utdata
#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)}
})