【写在前面】
昨晚加班到快1点。(已经是上周了)
就因为之前整理的数据错了一点,就得重新开始一点点地排查。
可也就是在昨天,发现数据出错的前半个小时,才知道原来还有数据透视表这种东西,要是能早点会这这个,估计就没有这么多事儿了。
所以,各位看官,您别笑,这也许是一篇用血泪写成的教程!
【正文开始】
作为一条新入职场的产品狗,与数据打交道自然是家常便饭。而整理一些琐碎繁杂量还大的数据更是日常的工作。
拿最近的一项工作来说,我需要监控某一项新上线功能的打点数据。工作流程大概是这样的:不定期用SQL在数据后台跑最近几天新增功能的打点数据,然后将后台返回的零散的数据按打点号、日期、打点参数整理好,通过计算得出需要的数据,最后根据日期,版本等不同维度对比,判断功能是否有异常。
SQL还好,一条语句ok,计算也还好,EXCEL公式一劳永逸,分析结果自然也是后话。所以这里最费时间的,也最容易出错的地方就是整理数据了。
当然你可能会说,整理有什么难的,把对应的数据一个个填到对应的格子里不就行了么?没错,数据量少当然没问题,但是如果得到的数据是这样的呢?
(为防止泄密,以下数据均不是公司原始数据)
如果是这样的呢?
一个个手动整理,就算不累死,我保证正常人20000%不会不出问题。
我是个懒人,这么麻烦的事情,我肯定不愿意做,所以我一直在想,有没有一种能一劳永逸的办法,每次数据更新只需要简单的操作下,就能得到最终的效果。于是就有了以下的尝试:
首先尝试从数据源入手,用简单的sql查询语句从数据后台跑出来的原始数据一般都是这样的格式
我希望能够有一种语句能够直接得到这样的格式
所以,经过一段时间研究,我写的查询语句是这样的,
要知道,这么长的一段,其实就只是一句代码。但是,好不容易想出来这么个法子,没想到公司数据库可能不支持太长的查询语句,此法只能作罢。
于是乎,只能在EXCEL整理上做文章了。刚开始并没找到比较好的方法,只能通过排序,先按照日期排序,然后根据打点号排序,这样就能使不同日期相同打点号的数据位于相邻的位置,这样操作后,再手动将每一部分打点号的数据挪到同一行,
(此处本应有动图,但是不知道平台抽什么风,一直无法上传)
这个过程那叫个累啊。累倒还好,主要是容易出错,有时候弄半天,发现一两处数据不对,就得重头查起。刚开始也还好,每个打点只有4个参数,也就是说,每个打点只需要挪四次,直到有一天,这几个打点号的参数个数都翻了几番。。。。。。
于是,我便开始四处求教,钻研更简单高效的绝世武功,终于,最终还是找到了这个方法。当使用新方法解决问题的那一瞬间,我只想说一句:what the fk!!!之前花辣么长时间去做的事,竟然特么的其实只要一分钟就能搞定?!不信?看图
简直欲哭无泪,平时十分钟搞定的事,现在只要30秒,要是早知道这个方法,得省多少时间??!
这就是数据透视表,一个EXCEL做数据分析的大杀器。当一行数据有多个属性时,只需要全部选中,将要整合的数据属性字段拖到列,要分别统计的属性拖到行字段中,最后需要相加的数据字段拖到最后的值里,然后,就没有然后了。
好好的一篇文章,被一张上传不了的gif图折腾这么久
阅读原文:http://mp.weixin.qq.com/s?timestamp=1506347783&src=3&ver=1&signature=gZOjOKwuOjPZsn2kwbgaeyC5BOLjLOYf8HZ90-a5VioajaTxLkeJswu75qklX49P72Qsv*eyB8mRrIDJoOrCJau8yvXRfPGdOqIk3xUlA*3bBO4v1n0Q7xSlyc*9qlCgEwuaEoSacyjs7BYLK18QXjtUCcfmeToe4BHIcq1iAxg=&devicetype=Windows-QQBrowser&version=61030004&pass_ticket=qMx7ntinAtmqhVn+C23mCuwc9ZRyUp20kIusGgbFLi0=&uin=MTc1MDA1NjU1&ascene=1