专栏首页公众号PowerBI大师一维表、二维表那些事

一维表、二维表那些事

今天想谈谈一维表和二维表

这两样如果搞不清,数据清洗时仍然会陷入事倍功半的泥潭

什么是二维表?

看下图,确定一个数值,必须通过行列两个条件去定位,这是二维表最显著的特征

什么是一维表呢?

像下面左图这种仅需通过单行就能确定数值的,被称为一维表。为了方便浏览打印美观,很多人会把重复姓名合并单元格,如下面右图(合并单元格只是格式美观,对数据清洗反而是一大障碍,会耗费额外时间精力)

为什么表格会有一、二维之分

大家还记不记得小时候最早接触到表格是什么样?对,就是学校的课程表。用二维表样式来制作课程,是再合理不过了。这张伴随学生时代的课程表,给人留下的印象太深,即便到了工作岗位,表格的制作和打印,也大都是二维表样式

那一维表是怎么来的,为什么会出现这样一种有大量重复,反人性的表格样式?

最早接触一维表的,是那些数据库从业者,因为一维表大都是系统自动生成的。但凡从系统里导出来的表,不管是XLS还是CSV,都是一维表样式

换句话说,一维表是符合数据库设计规范的——数据库设计规范是一套参考体系,在技术世界里不分国界地沿用了超过三十年

你只要知道,需要行和列来定位数值的,就是二维表;仅靠单行就能锁定全部信息的,就是一维表

当然,一维表、二维表可以相互转换 一维转二维用透视表,反之用逆透视

我们把一维表称为源数据,特点是数据丰富详实,适合做流水账,方便存储,有利于做统计分析;二维表称为展示数据,特点是明确直观,适合打印、汇报

依然用之前的示例(全国影城数据)来演示 这是系统导出的一维表,全国上万家影城,2019年上半年各月的人次明细,总计有六万多行,地理维度有省市区三层

一维表显然不适合人类阅读,想了解汇总信息,只能通过透视功能转换为二维表。一维表信息越详实,二维表可展示的方式就越灵活

回到数据清洗这个环节上来

实际工作中,我们拿到的数据大多是手工制作的二维表——注意,是手工制作,而不是透视过来的二维表,两者最大的区别就在于,手工二维表,存在大量“脏”数据,最典型的就是前文提过的“制表坑”

一个最显著的特点,就是存在大量合并单元格。二维转一维过程中,合并单元格是恶魔

但光你自己明白合并单元格的利弊并没什么L用,要知道,做数据分析时,数据的来源千差万别,如果都是系统导出的倒还好,清洗起来没什么工作量,就怕是那种各部门提交过来的手工电子表,他们只图自己工作方便,制表随意性造成了大量不确定因素,使你的清洗工作量成倍增加

关于数据清洗的经验与技巧,可以单独写本书,况且外面也已出版了很多Power Query的书籍,网上也有很多PQ方面的收费课程,学习门槛几乎可以忽略

这里就举个小示例,演示一下行列都有合并单元格的情况下,如何二维转一维

链接:https://pan.baidu.com/s/1p7OfC3-BkqpYw74pbzj0YA 提取码:g3j2

1、直接从EXCEL里导入PQ界面

PQ自动打开后,数据已导入,你会发现,之前合并单元格的地方,已被null占据

2、第一次“向下填充”

选择前三列,“向下填充”

3、第一次转置

通过“转置”功能,把月份人次场次,行转列

4、第二次“向下填充”

选中第一列月份,依然“向下填充”,把null覆盖掉

5、列合并

将前两列暂时合并,方便后续处理(你也可以试着不合并,看后面操作能不能继续下去。如果不能,究竟卡在什么地方,为什么出卡住,再回过来想一下,这步合并的缘由自然就水落石出)

6、第二次转置

行列恢复如初

7、首行提升为标题,逆透视

将第一行提升为标题。选取前四列,点击“逆透视其他列”

8、拆分列

将之前的合并列拆分,还原成两列

至此,二维表转一维表过程结束(注意修改列名)

接下来就可以建度量值拉图表搭建可视化页面了

本文分享自微信公众号 - PowerBI大师(PowerBIMaster),作者:东军

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-05-19

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • VBA一维表转二维表

    使用VBA代码来实现自然也是没有问题的,使用字典来分别记录行和列的序号,然后输出到1个二维数组就可以:

    xyj
  • VBA二维表转一维表

    工作中经常会碰到这种情况,外部收集来的资料,表格制作者为了排版好看,做成转换前的格式,这种格式看起来方便,但是做数据处理是非常不方便的,需要进行转换后进行数据处...

    xyj
  • 二维码支付的那些事儿

    在银行做了几年支付业务,这几年,我算是一个二维码支付业务从诞生到蓬勃发展到现在几乎在线下取代了传统银行卡和现金交易的一个推动者和见证者,这篇文章我想谈谈这些年二...

    金融民工小曾
  • 二维码支付的那些事儿

    在银行做了几年支付业务,这几年,我算是一个二维码支付业务从诞生到蓬勃发展到现在几乎在线下取代了传统银行卡和现金交易的一个推动者和见证者,这篇文章我想谈谈这些年二...

    金融民工小曾
  • 一维表和二维表,透视及逆透视

    小勤:好像是算知道的,一个一对一,一个一对多?最好是都能讲一下,感觉有点power query 基础操作的东西会用,但对概念还有点似懂非懂,这样导致东西一变就抓...

    大海Power
  • MySQL高频面试题:一维表转二维表

    分析,课程与分数情况,用到学生表及成绩表,两张表都是一维表,将其转化为右图所示的二维表。

    数据STUDIO
  • 常用功能加载宏——二维表转一维表

    工作中经常会碰到这种情况,外部收集来的资料,表格制作者为了排版好看,把表格做成多行多列的格式,这种格式看起来方便,但是做数据处理是非常不方便的,需要进行转换后进...

    xyj
  • 常用功能加载宏——一维表转二维表

    xyj
  • 事实表与维度表

    如果你没有接触过数据库,想当然一下,估计答案多半是肯定的——系统里的一维表就是长这样子

    公众号PowerBI大师
  • excel数据转置——一维表与二维表之间的转化!

    今天跟大家分享excel数据转置——一维表与二维表之间的转化! ▽ 我们在做数据搜集整理的时候 通常会遇到要将原始数据做转置处理 如下图案例所示 ? 这是一张典...

    数据小磨坊
  • python中对二维列表中一维列表的调用方法

    访问二维列表中的一维列表可以用下标法“列表名(数字)”的方式获取到一维列表所有元素

    砸漏
  • 二维表转一维表用多重数据透视?弱爆了!

    小勤:部门里有个表烦屎了,交上来的都是二维表,我每次都要转成一维表才好跟其他数据合并分析。

    大海Power
  • 前端运维部署那些事

    nrm 更多用于如果公司内网部署了私有仓库,也就是方便用nrm作来源切换,也有益于依赖的版本管理,如果你想搭建自己的私有仓库,可以使用verdaccio,可以看...

    树酱
  • 前端运维部署那些事

    nrm 更多用于如果公司内网部署了私有仓库,也就是方便用nrm作来源切换,也有益于依赖的版本管理,如果你想搭建自己的私有仓库,可以使用verdaccio,可以看...

    树酱
  • VBA与数据库——简化程序编写-一维表转二维表

    在一维表转二维表里介绍了使用字典来转换表格的方法,可以看到使用字典的方法代码量还是有一点多的,有点复杂。

    xyj
  • oracle学习(二维表维护&修改)

    —oracle学习 –oracle的管理系统学习 –oracle的数据管理学习 –oracle的用户管理 –oracle二维表管理 –二维表的创建 ...

    葆宁
  • PQ-数据转换10:一维表和二维表,透视及逆透视

    小勤:前面你的很多个关于PowerQuery的内容里都涉及到逆透视,这到底是什么意思呢?这个概念一直觉得似懂非懂的,有没有简单点的语句总结一下?

    大海Power
  • 58 - 编写一个生产器,将一个二维列表转换为一维列表

    若尘_
  • Oracle的二维表管理

    –创建表: –使用:create table 表名(字段名 类型,字段名 类型,…); –数据类型: –number类型 –数值类型 –整数类型 nu...

    葆宁

扫码关注云+社区

领取腾讯云代金券