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

Power Query M中统计每行P1-P12列非零值数量方法咨询

Power Query统计指定列中非零值的数量方法

方法一:可视化步骤操作(适合不熟悉M语言的用户)

  • 选中表格里的account和date列,右键选择「逆透视其他列」,这一步会把P1到P12的列转换为两列:Attribute(原列名)和Value(对应单元格的值)
  • 点击「添加列」→「条件列」,设置规则:当Value不等于0时返回1,否则返回0,给这个新列起个名字比如「非零标记」
  • 选中account和date列,点击「转换」→「分组依据」,分组依据选择这两列,新列名称设为「非零列数」,操作选择「求和」,求和的列选刚才的「非零标记」
  • 如果需要恢复原来的表格结构,可以选中分组后的account、date和「非零列数」,再把之前逆透视的列重新透视回去(可选)

方法二:自定义列直接写M代码(更高效)

  • 点击「添加列」→「自定义列」
  • 在弹出的公式输入框中粘贴以下代码:
List.Count(List.Select({[P1],[P2],[P3],[P4],[P5],[P6],[P7],[P8],[P9],[P10],[P11],[P12]}, each _ <> 0))
  • 代码解释:
    • {[P1],[P2],...,[P12]}:把当前行的P1到P12的值打包成一个列表
    • List.Select(..., each _ <> 0):筛选出列表中不等于0的元素
    • List.Count(...):统计筛选后列表的元素个数,也就是非零值的列数

补充说明

如果P1-P12列存在null值,且需要把null也排除在统计外,可以把代码里的条件改成:

each _ <> 0 and _ <> null

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 19:03:13