作者 | 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()方法,replace([A,B],C)表示将A、B替换成C。
3、多对多替换
多对多替换其实就是某个区域中多个一对一的替换。比如将年龄异常值240替换成平均值减一,260替换成平均值,280替换成平均值加一,该怎么实现呢?
(1)Excel实现
若想在Excel中实现,需要借助函数,且需要多个if嵌套语句来实现,同时已知年龄列为D列,具体函数如下:
下图为该函数执行的流程。
替换后的结果如下图所示:
(2)Python实现
在Python中若想实现多对多的替换,同样是借助replace()方法,将替换值与待替换值用字典的形式表示,replace(“A”:“a”,“B”:“b”)表示用a替换A,用b 替换B。
二、数值排序
数值排序是按照具体数值的大小进行排序的,有升序和降序两种,升序就是数值由小到大排列,降序是数值由大到小排列。
1、按照一列数值进行排序
按照一列数值进行排序就是整个数据表都以某一列为准,进行升序或者降序排列。
(1)Excel实现
在Excel中想要按照某列进行数值排序,只要选中这一列的字段名,然后单击编辑菜单栏下的排序和筛选按钮;在下拉菜单中选择升序或者降序选项即可,操作流程如下图所示。
按照销售ID进行升序排列前后的结果如下图所示:
(2)Python实现
在Python中我们若想按照某列进行排序,需要用到sort_values()方法,在sort_values后的括号中指明要排序的列名,以及升序还是降序排序。