一、数据的预处理
why?
在实际问题中,我们得到的原始数据往往是混乱的、不全面的,无法从中有效的识别并提取信息。
数据预处理可以去除数据中的噪音、异常值和缺失值,提高数据的质量,确保分析的可靠性和有效性。
1.处理数据
在数据预处理阶段最常见的就是数据的缺失和重复记录。对于重复的数据,直接将其删除即可。但是对于缺失的数据,我们主要是观察它的缺失率。以下是常见的缺失率的范围中,缺失数据的处理方法:
- 5%以内:如果问题允许,可以直接把行删除;
- 5%-20%:可以使用填充或插值方法处理,常见的填充方法有常数填充、均值填充等;
- 20%-40%:需要用机器学习等预测方法填充缺失数据;
- 50%以上:如果条件允许,把这一列都删掉。
2.数据规约
对大规模的数据库内容进行复杂的数据分析通常需要消耗大量的时间。数据规约是从原有的庞大的数据集中获得一个精简的数据集,在精简数据集上进行数据挖掘效率更高,挖掘结果与原始数据集所获得的结果基本相同。
常见的规约方式有:min-max规约和Z-score规约。
min-max规约表达式:
消除量纲的影响,所有属性都被规约到[0,1]范围内
Z-score规约:
两种规约方法可以组合起来用。
二、常见的统计分析模型
1.回归分析与分类分析
都是基于统计模型的统计分析方法,都研究因变量和自变量之间的潜在关系,通过统计模型的形式将这些潜在关系表达出来。
不同的是,回归分析中的因变量是连续变量,分类分析中因变量是离散变量。
2.假设检验
对假设检验问题进行数理上的检验并给予回答,这个过程就是假设检验。
根据样本信息与已知信息,对一个描述总体性质的命题进行“是或否”的检验与回答,就是假设检验的本质。即:假设检验验证的不是样本本身的性质,而是样本所在总体的性质。
假设检验大致可分为:参数假设检验和非参数假设检验。若假设是关于总体的一个参数或者参数的集合,则该假设检验就是参数假设检验。
3.随机过程与随机模拟
随机过程描述的是一段时间内随机变量的分布情况,
三、数据可视化
数据可视化是指使用可视化的图表去表达数据中的信息,如数据分析中的结论。数据可视化分为分析过程中和分析结果表达中的数据可视化。
分析过程中的可视化强调的是辅助分析,是更好的服务我们自己,只要自己能看懂,能从中得到有用的结论。
分析结果表达中的可视化强调的是更好的服务于阅读的人,让他们能更好的从中分析出结论是什么。
一个好的数据可视化图表应该是:展示的信息全面且无歧义,通俗易懂,既美观又易于理解。
1.python常见的数据可视化工具库
(1)Matplotlib
Matplotlib是一个面向对象的绘图工具库,pyplot是Matplotlib最常用的一个绘图接口,调用方法为:import matplotlib.pyplot as plt
使用该库的优点:简单易懂,能绘制复杂图表;缺点:绘制复杂图表的时候得一步一步绘制,代码量大。
(2)Seaborn
Seaborn是在matplotlib的基础上再次封装,对matplotlib 绘制统计图表的简化,比matplotlib更加易用,避免了多种参数的设置。
(3)Plotnine
他能在更短的时间内画出更复杂的图表,Plotnine具有ggplot2的图层特性,每一句代码都相当于往图像中添加一个图层,一个图层就是一类绘图动作。
Plotnine虽然使用更简单,但是还存在没有实现除了直角坐标以外的坐标体系等缺点,使得当我们没有使用直角坐标系绘制图表时,就无法使用Plotnine。
四、插值模型
插值主要用于处理缺失值。
1.线性插值
线性插值对两个点中的解析式是按照线性方程来建模,对已知的两个点之间构造直线进行填充,这个直线解析式为:
2.三次样条插值
三次样条插值是一种非常自然的插值方法。它将两个数据点之间的填充模式设置为三次多项式。
3.拉格朗日插值
对于一组数据{y}和下标{x},定义n个拉格朗日插值基函数:
这本质上是一个分式,当x=xk时lk(x)=1,这一操作实现了离散数据的连续化。按照对应下标的函数值加权求和可以得到整体的拉格朗日插值函数:
注:文章内容来源于开源学习平台Datawhale的学习笔记