15 Power Query-行列管理实例应用

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

               

Power Query-行列管理实例应用

数据源如下图,是学生三门课程的考试成绩,其中有一次通过的,有考过多次的:


要求:

1、找出每个课程考试三次以上的(包含三次);

2、找出三个课程同时一次考试通过的;

3、找出每个课程一次考试通过的;

貌似以现在我们的excel功能很难做到,下面我们就用PQ的方式跟大家讲讲具体的实现。

我们用之前学过的数据导入方式;"从excel文件导入“的方式导入。


上图就是我们处理过后的数据源。

然后我们需要找出没门课程考试三次及以上的童鞋,看似有点难度,其实就是要找出前面两列数据出现过三次及以上的记录。

所以我们需要选中前面两列,点击”开始“——”删除重复项“——”保留重复项“(2013版本是”保留行“——”保留重复项“)。


现在就把一次通过的记录都删掉了。


留下来的都是两次及两次以上的记录,跟我们的需要貌似还差一点。

其实我们进行每一次的操作,excel都是有代码支持,最简单的方式就是进入它的高级编辑器,找到如下字眼:

selectDuplicates = Table.SelectRows(addCount, each [Count] > 1)

像我英文这么好,编程又这么好的人一眼就看出来是什么意思了,这里的>1其实就是找出出现过一次以上的记录行。

很明显咯,我们把这里改成">2"不就大功告成了!



然后这里已经可以满足我们的要求了,但是我们是很严谨的啊,继续,修改列名,然后分组依据,求出他考了到底多少次,最后的分数是多少。



这样应该差不多了。

第二个需求是找出一次性通过的名单。

这个可以依葫芦画瓢了,选中前面两列,”保留行“——”保留重复项“。


我们把高级编辑器里改成”<2”,不就是一次通过的么!


将它转换程一个二维表。

选中“姓名”列,“转换”——“透视列”。



最后一个需求有点变态,是要找出所有课程都一次通过的名单。比如上面的陶勇,他的英语没有通过,是不给显示的。

我们依旧用透视列的功能。



千万记得选中“不要聚合”,为什么呢?因为只有一条记录的才会显示正确,否则都是error。

最后我们选中分数列(最好是对于数字列全部选中)用行列功能管理里的“开始”——“删除行”——“删除错误”。



搞定,相当流弊的功能啊!

           

给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow
这里写图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值