作者 | CDA数据分析师
我们把菜品挑选出来以后,就可以开始切菜了。比如要做凉拌黄瓜丝,吧黄瓜找出来以后,你就可以把黄瓜切成丝了。
一、数值替换
数值替换就是将数值A替换成B,可以用在异常值替换处理、缺失值填充处理中。主要有一对一替换、多对一替换、多对多替换三种替换方法。
1、一对一替换
一对一替换是将某一块区域中的一个值全部替换成另一个值。已知现在有一个年龄值是240,很明显这是一个异常值,我们要把它替换成一个正常范围内的年龄值(用正常年龄的均值33),怎么实现呢?
(1)Excel实现
在Excel中对某个值进行替换,首先要把待替换的区域选中,如果只是替换某一列中的值,只需要选中这一列即可;如果要在一片区域中进行替换,那么拖动鼠标选中这一片区域。然后依次单击编辑菜单栏中的查找和选择>替换选项(如下图所示)即可调出替换界面。使用快捷键Ctrl+H也可以调出替换界面。
下图为替换界面,分别输入查找内容和替换内容,然后根据需要单击全部替换或者替换即可。
(2)Python实现
在Python中对某个值进行替换利用的是replace ( ) 方法,replace ( A,B )表示将A替换成B。
上面的代码是对年龄这一列进行替换,所以把年龄这一列选中,然后调用replace ( ) 方法。有时候要对整个表进行替换,比如对全表中的缺失值进行替换,这个时候replace ( ) 方法就相当于fillna ( ) 方法了。
np.NaN是Python中对缺失值的一种表示方法。
2、多对一替换
多对一替换就是把一块区域中的多个值替换成某一个值,已知现在有三个异常年龄(240、260、280),需要把这三个年龄都替换成正常范围年龄的平均值33,该怎么实现呢?
(1)Excel实现
在Excel中需要借助if函数来实现多对一替换。已知年龄这一列是D列,要想对多个异常值进行替换,可以通过如下函数实现。
上面的公式借助了Excel中的 OR ( ) 函数,表示如果D列等于240、260或者280时,该单元格的值为33,否则为D列的值。替换后的结果如下图所示。
(2)Python实现
在Python 中实现多对一的替换比较简单,同样也是利用 replace ( ) 方法,