如何在Power Query中添加固定列,合并数据集时保留数据源名
用M语言给多数据集添加数据源列并合并
单个数据集添加数据源列
先给每个数据集单独新增data.source列,填入对应的数据源名称,用Table.AddColumn函数即可:
// 假设你的数据集叫Source,数据源名称为"bla" Table.AddColumn(Source, "data.source", each "bla")
这个函数会给表格新增一列,每一行都填充指定的数据源标识。
批量处理并合并多数据集
如果有多个数据集,先分别给每个数据集添加数据源列,再用Table.Combine合并。如果数据集数量多,用列表批量处理更高效:
示例代码(批量处理)
// 第一步:把数据集和对应的数据源名称配对成列表 DataSources = { {Dataset1, "SourceA"}, {Dataset2, "SourceB"}, {Dataset3, "SourceC"} }, // 第二步:批量给每个数据集添加数据源列 ProcessedData = List.Transform(DataSources, (item) => Table.AddColumn(item{0}, "data.source", each item{1})), // 第三步:合并所有处理好的数据集 CombinedData = Table.Combine(ProcessedData)
手动逐个处理(适合少量数据集)
如果数据集不多,也可以逐个处理后合并:
// 给每个数据集加数据源列 Dataset1_WithSource = Table.AddColumn(Dataset1, "data.source", each "SourceA"), Dataset2_WithSource = Table.AddColumn(Dataset2, "data.source", each "SourceB"), // 合并 CombinedData = Table.Combine({Dataset1_WithSource, Dataset2_WithSource})
处理后就能得到你想要的带data.source列的合并数据集,格式如下:
Date Amount data.source
1/1/2020 20 bla
1/1/2020 20 bla
1/1/2020 20 bla
内容的提问来源于stack exchange,提问作者symkly
相关产品推荐
相关产品推荐

