实战小例-度量值(Measure)和列(Column)

举个栗子来说明一下应该如何应用度量值(Measure)和列(Column)。
有一张学生考试成绩表的Excel,里面包含了学号,班级,以及各科成绩。导入到Power BI后显示的table如下。
这里写图片描述
仔细看右边的字段面板,能发现每个字段前都有一个∑符号。这表示Power BI已经对加载的数据做了预处理,把每个数字类型的列都进行了汇总求和,以方便后续使用。当然,这种处理并不智能,有一些列相加并无异议。例如成绩单中的学号,无论求和还是求平均数都没有任何意义,可以将其更改成未汇总,这样下次再加载表单时就不会进行汇总计算,从而节省CPU以及RAM的消耗。
这里写图片描述

求每个学生的总成绩
要计算每个学生的总成绩,就意味着要以行为标准,求每一行上语文,数学,英语等成绩的总和,因此应该选择新建一个列(Column)。至于求和方法就很简单,直接将各个列相加即可。(注意:此处不能使用Sum函数,因为Sum函数是对列中的所有制求和,而我们要的是把一行中,指定的多个列进行求值)。

总分 = '成绩单'[历史]+'成绩单'[地理]+'成绩单'[政治]+'成绩单'[数学]+'成绩单'[文综]+'成绩单'[英语]+'成绩单'[语文]

求学生总成绩分布情况
一般的考试成绩统计还喜欢统计每个分数区间段学生人数,例如600分有多少人,过500有多少,少于400分又有多少等。要在Power BI中做这个统计,可以新建一个列(Column)来对每一个学生的总成绩做标记。标记的方法是多次调用IF函数来判断总成绩所在的区间。

分数段 = IF('成绩单'[总分]>=600, "600分以上", IF('成绩单'[总分]<600 && '成绩单'[总分]>=500, "500-600分", IF('成绩单'[总分]<500 && '成绩单'[总分]>=400, "400-500分", IF('成绩单'[总分]<400, "400分以下"))))

得到这个分数段后既可以创建表单,来统计学生成绩分布图。
这里写图片描述

以班级为单位求学生成绩分布
上一个学生成绩分布是按照年级情况进行统计的,如果想要以班级为单位进行统计比较,例如看看哪个班600分以上的人数最多,则需要创建一组度量值用来分别统计每个班级的人数。从原始表中可知,有一个列为班级,可以表明该学生所属班级。但是由于Power BI跟Excel不同,不能直接指定区间范围进行统计,因此,要想得知某个班级的人数,则必须使用Filter函数在总人数的基础上来获取目标。例如下面的公式,是在成绩单总人数的基础上计算班级=310的学生人数。

班级310 = CALCULATE('成绩单'[人数],FILTER('成绩单','成绩单'[班级] = 310))

以此为例可以计算出311以及312三个班级的人数。之后就可以在Report页面创建一个可视化图形,横轴用分数段坐标尺,数值取三个班级的人数,即可获得三个班级学生成绩分布情况。
这里写图片描述

这样,一个简单分析学生考试成绩以及班级教学质量的报表就形成了。

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值