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

如何在Power BI中按团队按周计算MS Forms问卷特定问题的平均值?

按团队按周计算特定问题满意度平均值的Power BI解决方案

一、确认必要数据字段

确保你的Power BI数据集包含以下核心字段:

  • Team:员工所属团队名称
  • SubmitDate:问卷提交日期
  • SatisfactionScore:特定满意度问题的得分(需为数值类型,如1-5分)

二、生成周分组字段

需要将提交日期按周聚合,推荐用周起始日期作为分组依据,避免跨年度周数混乱:

方式1:Power Query中新增列

在Power Query编辑器中操作:

  1. 选中SubmitDate列
  2. 点击「添加列」→「日期」→「周」→「开始日期」
  3. 自定义周起始(比如周一),生成WeekStart字段,公式示例:
Date.StartOfWeek([SubmitDate], Day.Monday)

方式2:DAX创建计算列

如果无需修改数据源,直接在数据模型中创建计算列:

WeekStart = DATE(YEAR([SubmitDate]), 1, 1) + WEEKNUM([SubmitDate], 2) * 7 - 7

(参数2代表周一为周起始,改为1则是周日)

三、创建周均得分度量值

基础版(自动适配团队+周上下文)

直接利用Power BI的上下文筛选,用AVERAGE配合ALLEXCEPT锁定分组维度:

特定问题周均得分 = 
CALCULATE(
    AVERAGE('问卷数据'[SatisfactionScore]),
    ALLEXCEPT('问卷数据', '问卷数据'[Team], '问卷数据'[WeekStart])
)

进阶版(过滤空值/无效数据)

如果存在未填写的得分(空值),添加过滤条件排除无效数据:

特定问题周均得分 = 
CALCULATE(
    AVERAGE('问卷数据'[SatisfactionScore]),
    ALLEXCEPT('问卷数据', '问卷数据'[Team], '问卷数据'[WeekStart]),
    NOT(ISBLANK('问卷数据'[SatisfactionScore]))
)

修正AVERAGEX的正确用法

如果你坚持用AVERAGEX,需明确迭代的表范围,示例:

特定问题周均得分_AVERAGEX = 
CALCULATE(
    AVERAGEX(
        VALUES('问卷数据'[SubmitDate]),
        '问卷数据'[SatisfactionScore]
    ),
    ALLEXCEPT('问卷数据', '问卷数据'[Team], '问卷数据'[WeekStart])
)

注:对于简单平均值场景,AVERAGE比AVERAGEX更高效,无需刻意使用迭代函数。

四、可视化呈现

将Team拖到可视化组件的行/列区域,WeekStart拖到轴区域,再把上述度量值拖到值区域,即可生成每个团队每周的满意度平均得分报表。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 13:32:37