2.3 拓展技术专题3:数据清理
在现实工作中,开始分析数据时,数据往往不会有教科书或软件自带的数据示例那么好的质量。即使是电商行业程序化系统自动留存的数据,大多数时候其中也会发现各种各样需要处理的问题。
常见的数据质量问题包括但不限于:数据中的异常值、关键数据的缺失、混合多数据源时无法找到有效连接的关键字段等。在所有需要使用数据的场景中,无论数据可视化分析、商业智能报表开发,还是更复杂的大数据建模,数据质量问题都是整个流程中必须面对的,并且是最花费时间的工作。
Tableau提供了一些功能支持数据检查和数据预处理,包括在可视化工作区中直接隐藏不需要的数据,以及在多表连接过程中,连接字段可以使用公式在数据源连接界面中直接对数据进行重构。
下面列举一些常见数据处理功能的应用。
1. 字符错误的整理
分类数据经常会出现大小写不一致(如tableau和Tableau),错别字(如Tableau和Tableu),记录中前后存储了看不到的空格等问题(如tableau和tableau)。这些错误在人工观察时都不会造成太大的困扰,大脑会自动归纳和修正。但对电脑来说,这些都是不同的记录,这和我们希望的处理方式不一致。针对此类问题,可以用Tableau公式中提供的分组功能手动处理或者使用函数功能自动处理。
当有少量的记录不一致时,可以在Tableau中的“数据”面板有问题的字段上右击,在弹出的菜单中选择“创建组”命令,手动将书写错误的相同数据记录归为一组,然后将其重命名为一个正确的组名。例如,“Tableau”、“Tableau工具”和“Tableau软件”三种记录,可以重新归类为“Tableau软件”。
如果需要手动处理的数据比较多,可以创建计算字段,使用软件提供的函数来自动完成。例如,字段中存储了很多名称,但大小写不统一,并且可能字段的首尾有不需要的空格,此类问题可以通过创建计算字段,输入公式“LOWER(TRIM(字段))”自动统一不规范的字段,生成新的字段,免去大量的手动整理工作。
2. 数据异常值的识别处理
通过散点图或者直方图可以很容易地识别数据中的“异常值”。例如,数据展现的特征异于群体,或者某条记录的值比多数值都大很多,这样的记录是不是真正的异常,需要根据业务经验进行逻辑判断,然后再选择合适的处理方法。
一旦确定为异常值,在Tableau中可以设置筛选条件过滤异常值。值的筛选有多种方式。
(1)使用图表筛选器面板。将需要设置为筛选条件的字段拖动到筛选器面板(见图2-15),然后设置筛选条件,这样可以在数据表级别过滤掉一些不需要的异常记录。
图2-15 图表筛选器面板
(2)在数据连接源过滤数据。这样,所有使用同一数据源的数据表都会被过滤。例如,在客户主题的优惠券分析中(在第8章会介绍),若用券比率大于1,则为异常值,应该过滤掉这类数据。可以在数据源视图中单击“筛选器”命令,对数据源总体添加一个『用券比率』字段,并设置筛选条件为“至多为1”,如图2-16所示。
图2-16 添加筛选条件
(3)数据重构。数据重构就是实现行/列数据格式的转化。Tableau在数据源中提供了一个数据重构的功能。下面做一个简单的演示说明。
原始表结构(见图2-17):类别+各月销售额的交叉表格。
图2-17 原始表结构
连接上面表中的数据到Tableau,在数据预览区按住Shift键选择『1月』、『2月』和『3月』三列字段,右击字段,在弹出的菜单中选择“转置”命令(见图2-18),Tableau自动完成格式转化。
图2-18 选择“转置”命令
数据预览区获得新的数据结构,如图2-19所示。
图2-19 新的数据结构