You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerBI中按SegmentID分区添加MCI_Flag与WCI_Flag列求助

解决方法:添加MCI_Flag和WCI_Flag列

下面提供两种适合新手的实现方式,分别用DAX计算列和Power Query(M语言)操作:

方法一:DAX计算列(直接在数据模型中添加)

  1. 在Power BI Desktop中切换到数据视图,选中你的目标表格(比如命名为BookingTable)
  2. 点击顶部菜单栏的新建列,输入以下DAX公式创建MCI_Flag:
MCI_Flag = IF(CALCULATE(COUNTROWS(BookingTable), ALLEXCEPT(BookingTable, BookingTable[SegmentID]), BookingTable[SSRCode] = "MCI") > 0, 1, 0)

逻辑说明:ALLEXCEPT保留当前行的SegmentID上下文,计算该分区内是否存在SSRCode为"MCI"的行,存在则标记1,否则0。
3. 用同样方式创建WCI_Flag:

WCI_Flag = IF(CALCULATE(COUNTROWS(BookingTable), ALLEXCEPT(BookingTable, BookingTable[SegmentID]), BookingTable[SSRCode] = "WCI") > 0, 1, 0)

方法二:Power Query(M语言)操作(数据加载前处理)

  1. 点击菜单栏的转换数据进入Power Query编辑器,选中目标表格
  2. 点击分组依据,设置:
    • 分组依据:SegmentID
    • 新列名:GroupedRows
    • 操作:所有行
  3. 点击添加列→自定义列,创建MCI_Flag:
if List.Contains([GroupedRows][SSRCode], "MCI") then 1 else 0
  1. 同样创建WCI_Flag:
if List.Contains([GroupedRows][SSRCode], "WCI") then 1 else 0
  1. 点击GroupedRows列右侧的展开按钮,选择保留原列(BookingID、PassengerID、BaggageID、SSRCode)
  2. 调整列顺序后,点击关闭并应用即可得到预期结果

内容的提问来源于stack exchange,提问作者Crazy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 10:52:10