数据预处理|分析前如何整理数据?

数据预处理

在数据可视化的过程中,我们经常会遇到几个情况:

存在个别空值导致整列无法计算、

第三方软件导出的数据格式有问题、

存在重复值导致数据结果错误、

异常值导致可视化效果不好等等

这些问题都会影响我们的分析和可视化结果,这就需要我们在开始分析前,对数据进行清洗和整理。

专业的数据清洗和整理是指从数据库或数据表中更正和删除不准确数据记录的过程。

我们今天一起分享下广义的数据清洗,除了专业的数据库数据清洗外,一些本地的数据、第三方软件导出的数据等,在分析前,也要掌握数据预处理的思维,为后面的数据分析和可视化提供支撑

01、确定字段含义、类型

首先我们需要对数据有一个整体的了解

1、了解每列数据的含义和表头是否对应

2、确保没有重复的字段名

3、数据通常分为日期、数值、文本3种类型

日期:BI工具常用的日期数据的标准格式:

“2015-01-01 00:00:00”

(时分秒部分为可选部分)excel单元格格式设置为日期

数值:数值类型字段通常在系统中用来进行加减等数学计算,所以不能含有数字以外的符号或文本,例如货币符号、千位分隔符等

有人会问,那我需要在数据中展示单位或者分隔符怎么办呢?上传基础数据后,在可视化工具—BDP中制作图表时,可以对计算的数值设置单位、分隔符、小数位、百分数等多种格式

02、转化为一维表

二维表更符合我们日常的阅读习惯,信息更浓缩,适合展示分析结果,但作为源数据进行数据分析时,就需要使用一维表。

如何区分二维表和一维表呢?

当多个字段属于同类型同含义时,例如都是数值字段且表达的含义差不多,那这个就是二维表;

而不存在任何相同性质的字段就是一维表。

例如,上面的示例,这3列数据本质都是销售额,只是不同月份的销售额而已,那就需要我们将其转化为一维形式

操作步骤:

1、上传二维表

2、点击-创建合表-二维转一维

3、勾选需要合并的几列字段,在示例中需要合并3个数值字段,并设置合并后的字段名称

合并项:月份

合并值:销售额

一维表效果:

原始示例中,月份的信息被展示在了表头里,这样的情况下,我们就无法对月份数据进行有效分析,所以转换为一维表后,才能为后面的分析和可视化提供便利

03、删除重复值

在上传数据时,可以选择开启去重,系统会完全相同的多条数据,只保留一条。

在上传后,也可以在高级设置中开启去重,表格更新后,可以实现去重操作

04、缺失值处理

数据中出现缺失值会影响我们的分析结果,例如数值字段中存在空值,会导致无法计算等。

所以在数据预处理时,我们需要对缺失的数据进行处理

1、筛选检查是否有空数据

在上传后,可以通过数据筛选,检查字段中是否有为空的数据

2、对为空的数据赋值

数据中的空白数据,有可能是空值null,也有可能是空字符串,当是空字符串的时候可以用两个引号\’\’表示

这里我们可以添加计算字段,对字段A进行判断,当字段A为空时,对其赋值0,使之不影响后续计算

1)CCOALESCE:非空查找函数,返回参数中的第一个非空值或非空串;如果所有值都为NULL或空串,那么返回空串

示例:ccoalesce([字段A],0)

当字段A中存在空值时,对于数值字段的计算会有影响,将空值替换成0,可以用这个函数,当字段A不为空时,返回字段A,当字段A为空时,返回0

2)if函数:

空值:if([字段A] is null,0,[字段A])

含义:当字段A为空值时,返回0,否则返回字段A

空字符串:if([字段A]=\’\’,0,[字段A]) 

05、异常值处理

数据中的异常值通常包含几种情况,例如部分数值极大极小、实际数据不应该有负数,但是出现数值为负等。

例如:该示例表中,存在订单金额为负的情况,根据实际情况判断此数据为异常值

可以通过按维度聚合的方式,可视化的发现极大极小的异常值,通过筛选器将其筛选掉后进行分析

 

高质量的数据通常有一些相同特点:

准确性:字段含义明确、数值和实际情况相符

完整性:数据基本完整,不存在过多缺失值

一致性:同含义同类型字段度量统一

根据这些标准进行数据的预处理和清洗,能够帮助我们更快更好的进行后续的分析和可视化

文中所用数据分析工具:BDP个人版

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注