[编者按] Python是大数据分析的常用技术之一,用Python进行数据分析的众多优势使得越来越多的人开始走上Python数据分析之路。后台也常常有读者来信,希望我们分享关于Python数据分析的知识。从本期开始,我们推出“小白学Python数据分析”专栏,本专栏邀请到一位Python数据分析的初学者小白,记录他学习Python数据分析的历程。大家可以和小白一起学习,并完成每期专栏中的实例,就可以掌握Python数据分析的常用方法和技术。教材方面,我们参考的是王宏志老师编著的《大数据分析原理与实践》。由于小白也在学习过程中,所以文中难免会有认识和理解不当之处,欢迎大家批评指正,更欢迎大家通过后台留言与我们进行讨论交流,大家共同向Python数据分析高手的目标前进! 数据预处理是进行数据分析的关键环节,这项工作完成的好坏将直接影响数据分析的难度和质量。本期文章我们就来聊聊数据预处理的那些事儿。我们将主要讨论下面几个方面: 1)python数据预处理相关的库 2)数据抽样 3)数据过滤 4)数据标准化和归一化 5)数据清洗 1. Python数据预处理相关的库 在Python中,不同目的数据分析会用到的库不一样。库函数的设计与它的应用目的有关,所以数据预处理功能也有专门的库函数来实现。比较常用的数据预处理函数的库主要有pandas和sklearn。 下面我们就利用这两个库来进行数据预处理的相关工作。 2. 数据抽样 数据抽样的办法有很多,比如随机抽样、分层抽样、系统抽样、整体抽样等。而在机器学习领域,样本集合划分为训练集和测试集两部分,在进行学习前,需要对样本集合进行划分。 1)随机抽样 利用Pandas库中的sample函数可以完成随机抽样。下面是看图就懂系列: 2)样本集合的分类 sklearn中的train_test_split函数可以将样本自动分为测试集和训练集,该函数用随机变量来分类,需要输入随机数种子来分类样本集合,该函数的使用极其方便。 3. 数据过滤 1)去掉某个值: 在pandas中可以直接对Dataframe结构的数据集进行操作,对某个值的操作如下。 2)过滤掉某个范围的值 pandas也提供了按某列过滤掉某个范围值的方法,代码及注释如下: 3.数据标准化及归一化 在sklearn库中有关于标准化和归一化的函数StandardScalers。在之前的分类学习中,我们已经使用过相关的函数,下面给出标准化函数的使用举例: 4.数据清洗 1)数据过滤 数据缺失是大部分数据分析应用中的常见情况,Pandas使用浮点值NaN表示浮点和非浮点数组中的缺失数据,它只是一个便于被检测出来的数据而已。处理NA的方法有四种:dropna、fillna、isnull和notnull。 dropna的实例如下: 若不想滤除缺失的数据,而是通过其他方式填补“空洞”,那么通常使用fillna函数来完成。通过一个常数调用fillna就会将缺失值替换为那个常数值: 输出结果如下: 可以看出fillna将NA变为了0。 2)移除重复数据 drop_duplicated方法可用于返回一个移除了重复行的DataFrame,例如: 结果如下: 关于数据预处理我们就介绍到这里啦,小伙伴们可以通过动手练习感受下数据预处理的过程。如果遇到问题,欢迎在后台留言哦~ “大数据与数据科学家”公众号 主编:王宏志 特邀副主编:朱劼 副主编:丁小欧 责任编辑:齐志鑫,王雨茁,陈柯昊 编辑: 陶颖安 -精彩内容,记得分享到朋友圈- |
|
来自: 首家i55ryzehof > 《电脑知识》