分享

小白学Python数据分析

 首家i55ryzehof 2018-08-27

[编者按] 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,例如:

结果如下:

关于数据预处理我们就介绍到这里啦,小伙伴们可以通过动手练习感受下数据预处理的过程。如果遇到问题,欢迎在后台留言哦~

“大数据与数据科学家”公众号

主编:王宏志

特邀副主编:朱劼

副主编:丁小欧

责任编辑:齐志鑫,王雨茁,陈柯昊

编辑: 陶颖安

-精彩内容,记得分享到朋友圈-

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多