Power BI Query Editor:获取唯一值升序索引及自定义列实现方法
Power BI Query Editor 操作方案
1. 为唯一值获取升序索引编号
要给唯一值生成升序索引,可按以下步骤操作:
- 打开Query Editor并加载目标数据表,选中需要处理的列(如
产品类别),点击开始选项卡的「升序排序」,确保值按顺序排列。 - 切换到转换选项卡,点击「分组依据」:
- 分组依据:选择刚才排序的目标列
- 新增列名设为
行集合,操作选择「所有行」
- 选中分组后的表,点击添加列选项卡 → 「索引列」→ 「从1开始」,此时每个唯一值会对应一个递增的索引。
- 展开
行集合列,保留原数据列和新生成的索引列即可。
也可直接用自定义列公式实现,无需分组:
List.PositionOf(List.Sort(List.Distinct(你的表名[目标列])), [目标列]) + 1
该公式先提取目标列的唯一值并排序,再返回每个值在排序后列表中的位置(加1使索引从1开始)。
2. 生成分组内递增的自定义序号列
(注:配图展示的是分组内每行按顺序生成从1开始的递增序号,操作步骤如下)
- 在Query Editor中加载目标数据表,选中用于分组的列(如
区域),点击转换选项卡的「分组依据」:- 分组依据:选择分组列
- 新增列名设为
组内数据,操作选择「所有行」
- 选中
组内数据列,切换到添加列选项卡,点击「自定义列」,输入以下公式:
Table.AddIndexColumn([组内数据], "自定义序号", 1, 1)
- 展开
组内数据列,勾选原数据列和自定义序号列,即可得到图中所示的自定义列。
若无需分组操作,也可通过自定义列直接计算:
List.Count(Table.SelectRows(你的表名, (x) => x[分组列] = [分组列] and x[排序依据列] <= [排序依据列])[分组列])
需替换排序依据列为用于确定组内行顺序的列(如日期、原索引列)。
内容的提问来源于stack exchange,提问作者Project Insights
相关产品推荐
相关产品推荐

