购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.2 数据预处理

了解常见的数据类型和常用统计量后,本节展示了一个完整的数据预处理流程,即数据补全、剔除异常值和消除量纲等步骤。这些工作在绝大部分项目中都是通用且必不可少的。

2.2.1 补全缺失数据

缺失值是数据集中十分常见的一类数据,真实数据中往往存在或多或少的缺失值。例如,在收集个人信息时,可能某些人缺失性别信息,另一些人缺失婚姻信息等。缺失值处理的恰当与否直接影响分析结果的准确性。

处理缺失值时最简单的方法是直接将含有缺失值的行删除。由于这种方法简单,因此它的适用范围较小。一般来说,删除的缺失数据不能超过全部数据的10%;当样本量较小时,不能超过全部数据的5%。当缺失数据过多时,可以删除少部分缺失情况严重的数据,对其他缺失情况不太严重的数据使用均值、中位数等进行填补。

前文已经提到,均值和中位数是非常相似的两个数。总的来说,当数据集分布较对称时,使用均值替换空缺值较好;当数据集分布较不对称时,使用中位数替换空缺值较好。另外,也可以使用众数或其他能反映数据集中心的统计量来填补空缺值。

使用均值或中位数来填补空缺值是一种较好理解、较好操作的方法,但它也存在缺点,尤其是当数据集较大时,这种方法对数据集准确度的影响将会很大。按照相关性对空缺值进行填补是更加聪明的方法。

按照相关性填补空缺值有两种方法:按照个案相关性或按照变量相关性填补空缺值。计算个案相关性并根据相关性填补空缺值较为简单,理解起来也较为容易。我们称数据表中的一行数据为一条个案,计算个案相关性就是计算每一条数据和每一条数据之间的相似程度。

提示

欧式距离是最常用于度量相似程度的统计量,欧氏距离的计算公式为 ,其中 x i y i 代表两个不同个案的不同分量。

记含缺失值的个案为特殊个案,计算其他所有个案与特殊个案的欧氏距离,则欧氏距离越小,该个案便与特殊个案越相似。找出与特殊个案最相似的10个个案,计算这10个个案的均值,该均值就是利用个案相似度为第6个个案计算出的均值,可用于填补该缺失值。

类似地,这种方法也可以用于填补其他个案的缺失值。显然,这种方法的思想在于既然两个个案的其他值都相似,那么这两个个案的缺失项也很可能相似。这种方法同样也可以用于填补空缺了其他值的个案。

这种方法似乎既便捷又准确,但它同样存在明显的问题。首先,非数值型变量并不适合欧氏距离公式;其次,一条个案所含的全部变量中并不是其他所有变量都与缺失变量有关。

利用变量之间的相似度填补空缺值与利用个案相似度的思想是一致的。但利用变量相似度要更加复杂一些。首先,要查看不同列之间的相关系数;其次,挑选出那些与含有空缺值的列最相关的列;再次,要将含有空缺值的列看作因变量(随其他变量的变动发生变动的变量被称为因变量,通常只有一个),将其他与之相关的列看作自变量(导致其他变量变动的变量被称为自变量,自变量可以有多个),构建回归方程;最后,根据回归方程对空缺值进行预测和填补。这种方法十分复杂,读者可阅读3.2节后回顾本段内容。

2.2.2 剔除异常值

异常值是数据集中较为特殊的一类值,它指的是距离大部分数据点明显较远的值。异常值的产生原因可能是数据录入错误、数据产生条件与其他数据不一致或出现小概率事件。异常值对数据分析结果会产生较大的影响。

提示

箱线图观测法是最常用的异常值剔除方法。箱线图是一种利用极值、四分位数和中位数画出的图形,图中还标出了常规意义上的异常值,即距离中位数远于3个标准差的值。

图2.1所示是一个典型的箱线图。箱线图由两条虚线、一个箱子和一些异常值点组成,其中两条虚线末尾的横线是变量的两个极值;箱子的上下边缘是变量的四分位数,箱子中的粗横线则是变量的中位数。在计算极值、四分位数和中位数时,并没有把异常值考虑在内。

图2.1 箱线图实例

观察箱线图,可以发现箱子和虚线都处于0~100,而图2.1中由圆圈标出的异常值点则处于100~400,这表明该变量右侧的数据是非常分散、稀疏的。

当异常值的个数非常少时,直接删除即可;在删除后应再次绘制箱线图,检查有没有新的异常值出现。当异常值的个数较多时,则应考虑数据收集是否准确,或者是否暗示了该变量的某种特点。以图2.1为例,它可能表明这个变量服从右偏分布。

将距离中位数远于3个标准差的数据点看作异常值的方法虽然简单流行,但它只能处理那些整体分布较为对称的数据集,当整体分布有多个峰值时,这种判断方法就不起作用了。

图2.2所示是一个具有3个峰的数据集,它的数据点主要集中在左侧,但右侧尾部又有两个小峰。

图2.2 多峰分布的数据集

对这种多峰分布的数据集,应找出离左边数据和右边数据都很远的数据点,并将这些同时远离两个峰值的数据点视为异常值,这种异常值也叫作局部异常值。

时间序列数据是一种典型的多峰分布数据集,时间序列具有周期性,同时随着周期的增加,同一周期内的数据的波动程度也会发生改变。

也可将数据值和数据集均值的差的绝对值与数据集标准差相除,将除数和异常值分布表进行比较,除数大于临界值时,就认为该数据值是异常值。此外,异常值不但存在于一元变量中,在多元变量中探索异常值同样有其特殊的意义,例如,同时在两个变量中都异常的异常值就格外具有探究意义。

2.2.3 数据的归一化

归一化又称为标准化。在需要比较两组量纲不同的数据时,数据的标准化是必要的。例如,我们无法将一组满分值为10分的比赛得分与一组满分值为100分的比赛得分直接进行比较,后者的20分并不比前者的5分更优秀。只有将这两组数据进行标准化后进行比较才是有意义的。

在2.1.2小节介绍了数个统计量,它们也没有消除量纲。如果将小球的体积增大,那么它的均值、方差等也会随之增大。

换言之,如果一组数据的量纲特别大,那么它的方差就特别大,即便它的数据集中程度很高。因此,只有两组数据的量纲相同时,比较它们的方差才是有意义的。这一结论也同样适用于四分位差、平均差和标准差等统计量。

若想要比较两组量纲不同的数据,一种方法是先将这两组数据进行标准化,然后再计算它们的方差;另一种方法是使用一些已经消除了量纲的统计量,例如,变异系数和异众比率。

数据标准化的公式为 ,其中 x new 为标准化后的数据; 为该组数据的均值; σ 为该组数据的标准差。

变异系数是根据标准差引申出来的一个统计量,它与标准差一样,其值越大,数据的离散程度就越高。变异系数也叫作离散系数,其计算公式为 ×100%,其中 σ 为标准差; 为均值。

变异系数只能用于数值型变量,对于顺序变量和分类变量,可以使用异众比率来衡量其离散程度。变异系数使用均值来消除变量的量纲,但顺序变量和分类变量不能计算均值,因此,异众比率使用众数来消除变量的量纲。

异众比率是非众数的数据个数在数据总个数中所占的比例。

表2.3所示是一名篮球队员的出席情况,每次训练,球员可能的出席情况共有4种,分别是“迟到”“早退”“未出席”“正常出席”,它们的次数分别为10次、10次、5次、35次。

表2.3 某篮球队员周末特训出席情况

31-5

在60次训练中,“正常出席”的次数最多,“正常出席”即为众数。除“正常出席”外,其__他情况的次数一共有25次,那么这组数据的异众比率就是 ,即约42%。显然,异众比率越大,数据的离散程度就越高,众数的代表性就越弱。

提示

平均差、标准差和变异系数等关注的是均值的代表性,这些统计量越小,就说明数据越紧密地围绕在均值附近。而异众比率关注的则是众数的代表性。此外,异众比率和变异系数都不受量纲的影响,但异众比率受到类别个数的影响。非数值型变量的类别越多,则它的异众比率就会越大。 iYb3f6nZZZYDi+lUWDeujBptyoRFH4P2hYfn5uTLgIMu1rD0neHt3dxA/Wr8Rze1

点击中间区域
呼出菜单
上一章
目录
下一章
×