一、缺失值处理
缺失值就是由某些原因导致部分数据为空,对于为空的这部分数据我们一般有两种处理方式,一种是删除,即把含有缺失值的数据删除,另一种是填充,即把确实的那部分数据用某个值代替。
1、缺失值查看
对缺失值进行处理,首先要把缺失值找出来,也就是看哪列有缺失值。
(1)Excel实现
在Excel中我们先选中一列没有缺失值的数据,看一下这一列数据共有多少个,然后把其他列的计数与这一列进行对比,小于这一列数据个数的就代表数据个数的就代表有缺失值,差值就是缺失个数。
如果想看整个数据表中每列数据的缺失情况,则要挨个选中每一列去判断该列是否有缺失值。
如果数据不是特别多,可利用定位调教查找,在定位条件对话框中选择空值,单击确定就会把所有的空值选中。
(2)Python实现
在Python中直接调用info()方法就会返回每一列的缺失情况。
Python中缺失值一般用NaN表示,还可以用isnull()方法来判断哪个值是缺失值,如果是缺失值则返回True,如果不是缺失值则返回False。
2、缺失值删除
缺失值分为两种,一种是一行中某个字段是缺失值;另一种是一行中的字段全部为缺失值,即为一个空白行。
(1)Excel实现
在Excel中,这两种缺失值都可以通过在定位条件对话框中选择空值找到。
这样含有缺失值的部分就会被选中,包括某个具体的单元格及一整行,然后单击鼠标右键在弹出的删除对话框中U型安泽删除郑航选项,并单击确定按钮即可实现整行的删除。
(2)Python实现
在Python中,利用dropna()方法,dropna()方法默认删除含有缺失值的行,也就是只要某一行有缺失值就把这一行删除。
运行dropna()方法以后,删除含有NaN值的行,返回删除后的数据。
如果想删除空白行,只要给dropna()方法传入一个参数how = "all"即可,这样就会只删除那些全为空值的行,不全为空值的行就不会被删除。
3、缺失值填充
(1)Excel实现
在Excel中,缺失值的填充和缺失值删除一样,利用的也是定位条件,先把缺失值找到,然后在第一个缺失值的单元格中输入要填充的值,最常用的就是用0填充,输入以后按Ctrl+enter 组合键就可以对所有缺失值进行填充。
除了用0填充、平均值填充、众数填充们还有向前填充、向后填充等方式。
(2)Python实现
在Python中,利用fillna()方法对数据表中华的所有缺失值进行填充,在fillna后面的括号中输入要填充的值即可。
在Python中也可以按不同列填充,只要在fillna()方法的括号中指明列明即可。
二、重复值处理
重复数据就是同样的记录有多条,对于这样的数据我们一般做删除处理。
1、Excel实现
在Excel中依次单击菜单栏中的数据>数据工具>删除重复值,就可以删除重复数据了。
Excel的删除重复值默认针对所有值进行重复值判断。
2、Python实现文章来源:https://www.toymoban.com/news/detail-500472.html
在Python中利用drop——duplicates()方法,该方法默认对所有值进行重复值判断,且默认保留第一个(行)值。也可以只针对某一列或某几列进行重复值删除的判断,只需要在drop_duplicates()方法中指明要判断的列名即可。
也可以利用多列去重,只需要把多个列名以列表的形式传给参数subset()即可。
还可以自定义删除重复项时保留哪个,默认保留第一个,也可以设置保留最后一个,或者全部不保留。通过传入参数keep进行设置,参数keep默认值是first,即保留第一个值,也可以是last,保留最后一个值,还可以是FALSE,即把重复值全部删除。
三、异常值的检测与处理
异常值就是相比正常数据而言过高或过低的数据。
1、异常值检测
要处理异常值首先要检测,也就是发现异常值,发现异常值的方式主要有以下三种。
(1)根据业务经验划定不同指标的正常范围,超过该范围的值算作异常值。
(2)通过绘制箱形图,把大于(小于)箱形图上边缘(下边缘)的点成为异常值。
(3)如果数据服从正态分布,则可以利用3σ原则:如果一个数值与平均值之间的偏差超过3倍标准差,那么我们就认为这个值是异常值。
2、异常值处理
对于异常值一般有以下几种处理方式。
(1)最常用的处理方式就是删除。
(2)把异常值当作缺失值来填充。
(3)把异常值当作特殊情况,研究异常值出现的原因。
1、Excel实现
在Excel中,删除异常值只要通过筛选把异常值对应的行找出来,然后单击鼠标右键选择删除行即可。
对异常值进行填充,其实就是对异常值进行替换,同样通过筛选功能吧异常值先找出来,然后把这些异常值替换成要填充的值即可。
2、Python实现
在Python中,删除异常值用到的方法和Excel中的原理类似,Python中是通过过滤的方法对异常值进行删除。对异常值进行填充,就是对异常值进行替换,利用replace()方法可以对特定的值进行替换。文章来源地址https://www.toymoban.com/news/detail-500472.html
到了这里,关于十七、数据预处理(一)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!