本文为“数据整理入门”文章的下篇。上篇介绍表格的基本元素与不同的格式(电子表格、表单、数据透视表等的不同);本篇主要讨论“如何将数据整理成可分析的电子表格数据”。
上一篇提到,“电子表格”适合存放源数据,使用在线表格/数据分析/数据管理工具时,如果有提供xlsx檔、CSV檔汇入/汇出的功能,讲的都是电子表格(格式)。
如果你是 Ragic 的订户,在准备将数据汇入Ragic时,除了这篇Ragic的教学文章,也可以参阅此篇的原则。
电子表格格式数据放置的逻辑:第一列通常是描述数据的首部,每列包含一样数量的栏,每列中同一栏所记录的数据值具备相同的属性;相对的,同一列不同栏的数据性质就都不相同。
接下来就直接进入正题——
虽然好像显而易见,但还是要说明一下:电子表格可以各种不同的文件形式保存/交换,一般文字处理最常以 PDF、Word 、Excel(扩展名.xlsx)来做表格,但除此之外,表格也可以存成 CSV、JSON 等文件格式。这些不同的文件类型,会直接影响数据可被机器抽取、分析的程度。
这边以一般人最常用的文字处理文件:PDF, Word, Excel为例。PDF 檔和 Word 檔主要是给人类阅读的,人类可以透过 PDF 表格的视觉呈现,解读每一栏、每一列、每个单元格的区隔。但计算机接收、解读数据的机制和人类不同,前述的 Pdf 文件对计算机而言只是一大包没有区隔、无法分开解读的数据,也就很难用机器进一步分析。
而Excel等电子表格软件的文件类型,可以让计算机读出不同栏、不同列的区别,能做更多分析,因此在这种情况下会是比 Word 更好的选择。(举例来说:Excel可以用公式加总计算,但Word就不行。)
可分析的电子表格每一列(每一笔纪录)一个字段只会有对应的一个值,不多也不少。如果为了表格排版美观的目的,在电子表格数据上归并单元格,数据可能会变得难以分析。
例如下图的数据,原本有两个公司电话的字段(公司电话、分机),字段首部被归并成一个,使得这个字段首部底下每一列都个别对应两个值。也许有人觉得这样看起来比较清楚,但如果要针对这个“公司电话”字段来筛选、排序时,系统怎么知道要选择哪一个字段值呢?
同理,“归并列”也不行。
归并首部、归并字段值,这是给人看的逻辑,不是让机器读得懂的逻辑。若用给人看的逻辑放置数据,又期待机器能自动读懂、分析它,就行不通。
一个单元格里塞多个数据,像下图这样(部门、职称放在同一栏),虽不必然出错,但就没办法单独依部门或职位分析数据。
如果你想汇入的数据有这类归并单元格问题,且归并的是“栏”而不是“列”,在 Excel 你可以用数据剖析的功能来分开它们,在 Ragic 则可以考虑用抓字符的公式如LEFT(value,length)、RIGHT(value,length)、MID(value,start,[length]),详细说明可以参阅支持公式列表说明(可用“Control/Command+F”句法找关键字)。
你也不需要在用来放源数据/作为分析依据的电子表格中,增添多余的诠释信息,例如额外的标题、注解、小计总额等,这些更适合在进一步的报表与分析中让系统呈现。
Ragic客服会遇到的例子:和许多电子表格、表单类软件一样,Ragic 支持将你自己的 Excel、CSV 格式数据汇入到数据库,前提是数据格式必须符合 Ragic 的汇入原则,这其中有些是 Ragic 自家格式,但有些是电子表格数据的共通原则,不符合以上原则的话,你就汇不进去。
有时候我们会遇到客户写信来求助:“汇入 Ragic 时,原本的 Excel 格式会跑掉/好像无法汇入...”仔细一看客户附的 Excel 格式是这个样子的(注:此为示意数据,非当事人数据):
数数看这犯了几个问题呢?(1)标题列之外多余的列。(2)归并单元格,一个首部对应多个值。
这样就算可以汇入,系统也无法照你要的方式帮你分析。
(注:如果你的表格只是要给人看,而不是要分析的,就没有这个问题,这是 Excel 等软件会有归并字段功能的原因。 Ragic 表单页也会提供字段值跨栏和描述字段的功能,以帮助你排版,但描述字段放的就不是用来分析的数据)
另一个例子,直接借用政府数据开放平台的说明,这个说明的“错误一”也包含了归并单元格、多余的标题列、备注等问题,会使其他人要利用这笔数据时,较不方便。
每个字段的数据格式不一致,包含小数点或日期,或有人是数字有人是金额,比较同字段内容时也会不方便,最好统一日期格式、金额单元、小数点等。许多电子表格/表单软件会直接规定一致的字段格式,以避免下图的状况。
数据如果只是单独放在电子表格软件中,不需要汇出、交换、链接其他数据,每一列/每一栏数据因为都有固定的位置,在同一个文件中可能不会有混淆的问题,只要指出是哪张工作表、哪一列即可。但是如果需要汇出、交换、链接其他数据,不一定会有固定的列/字段置,这时系统会需要一个每笔数据独一无二、不重复的字段,做为辨认该笔数据的依据。
例如:员工数据表中若有“员工编号”这个字段,会比单纯用“员工姓名”来确认哪笔数据是哪笔准确;“商品编号”比“商品名称”精确而不易混淆。
借用一张过去教学文章的图作结。此部分我们写过相关文章,请点此阅读。