SQL做数据分析流程

SQL做数据分析流程

一、提出问题

二、理解数据

数据获取,了解数据来源及说明。

三、数据清洗

数据清洗基本概念 数据清洗(Data cleaning)– 对数据进行重新审查和校验的过程,目的在于删除重复信息、纠正存在的错误,并提供数据一致性。

1、数据预处理

①将数据导入处理工具。

②看数据。1.通过看元数据,包括字段解释、数据来源等信息2.抽取部分数据进行了解,比如使用limit 查看几行数据

2、缺失值处理

①判断是否为空值

查询字段值为空的语法:where <字段名> is null
查询字段值不为空的语法:where <字段名> is not null

#单字段查询空值

select * from tb where dates is NULL;

select * from tb where ISNULL(id)

#多字段查询空值

SELECT * FROM tb WHERE col_1 IS NULL OR col_2 IS NULL OR col_3 IS NULL;

②判断是否为空字符串

SELECT * FROM tb WHERE col_1 = '' OR col_2= '' OR col_3 = '' OR col_4 = '' ;

③筛选查看哪些字段存在空字符串

SELECT * FROM tb WHERE null_col=''

④处理缺失值

​ a. 确定缺失值范围

img

处理缺失值的方法有:填充缺失值、删除缺失数据。

​ b. 去除不需要的字段

删除前注意有写where等条件筛选语句,清洗前数据先备份或者在小规模数据上试验成功再处理全部数据,删错追悔莫及。

​ c.填充缺失值

  • 以业务知识或经验推测填充缺失值

  • 以同一指标的计算结果(均值、中位数、众数等)填充缺失值

  • 以不同指标的计算结果填充缺失值

​ d.重新取数

当某些指标非常重要但缺失率高的情况下,需要重新取数,尝试从其他渠道取数补全

  • 1⃣️

3、数据一致化处理

一致化处理就是对数据进行数据抽取,使得数据字段满足基本的数据分析需求。一般根据需求进行更新操作。比如数据类型转换,提取关键需求字段,日期格式转换,提取时间等。

如果数据是由系统日志而来,那么通常在格式和内容方面,会与元数据的描述一致。而如果数据是由人工收集或用户填写而来,则有很大可能性在格式和内容上存在一些问题,简单来说,格式内容问题有以下几类:

格式内容清洗:

①时间、日期、数值、全半角等显示格式不一致

②内容中有不该存在的字符

③内容与该字段应有内容不符

4、数据排序

5、异常值处理

逻辑错误清洗:

  • 去除不合理值

    可用但不限于箱形图发现离群值

  • 修正矛盾内容

    有些字段是可以互相验证的,举例:身份证号是xxxxxx1980XXXXXXXX,然后年龄填18岁。

  • 重复值清理

    MySQL中删除重复数据只保留一条

四、构建模型和分析问题(描述分析)

五、数据可视化(解决需求)

参考资料:

数据清洗的一些梳理

作者

terese

发布于

2020-01-30

更新于

2022-10-05

许可协议