Table.TransformColumns
構文
Table.TransformColumns(table as table, transformOperations as list, optional defaultTransformation as nullable function, optional missingField as nullable number) as table
詳細
transformOperations
に記載されている各列操作を適用し、table
を変換します (形式は { 列名、変換 } または { 列名、変換、新しい列の型 } になります)。 defaultTransformation
が指定されている場合、transformOperations
に記載されていないすべての列に適用されます。 transformOperations
に記載されている列が存在しない場合、省略可能なパラメーター missingField
で代替が指定されていない限り、例外がスローされます (MissingField.UseNull や MissingField.Ignore など)。
例 1
列 [A] のテキスト値を数値に変換し、列 [B] の数値をテキスト値に変換します。
使用方法
Table.TransformColumns(
Table.FromRecords({
[A = "1", B = 2],
[A = "5", B = 10]
}),
{
{"A", Number.FromText},
{"B", Text.From}
}
)
出力
Table.FromRecords({
[A = 1, B = "2"],
[A = 5, B = "10"]
})
例 2
存在しない列 [X] の数値をテキスト値に変換します。存在しない列は無視されます。
使用方法
Table.TransformColumns(
Table.FromRecords({
[A = "1", B = 2],
[A = "5", B = 10]
}),
{"X", Number.FromText},
null,
MissingField.Ignore
)
出力
Table.FromRecords({
[A = "1", B = 2],
[A = "5", B = 10]
})
例 3
存在しない列 [X] の数値をテキスト値に変換します。存在しない列には既定で NULL が設定されます。
使用方法
Table.TransformColumns(
Table.FromRecords({
[A = "1", B = 2],
[A = "5", B = 10]
}),
{"X", Number.FromText},
null,
MissingField.UseNull
)
出力
Table.FromRecords({
[A = "1", B = 2, X = null],
[A = "5", B = 10, X = null]
})
例 4
列 [B] 内の数値を増分してテキスト値に変換し、他のすべての列を数値に変換します。
使用方法
Table.TransformColumns(
Table.FromRecords({
[A = "1", B = 2],
[A = "5", B = 10]
}),
{"B", each Text.From(_ + 1), type text},
Number.FromText
)
出力
Table.FromRecords({
[A = 1, B = "3"],
[A = 5, B = "11"]
})