分享

学神之路 —— Python数据科学全攻略(原创译文)

 天道酬勤YXJ1 2016-04-20

报告为灯塔大数据原创内容,欢迎个人转载,其他机构转载请在文章开头标注:

“转自:灯塔大数据;微信:DTbigdata”

Python菜鸟到Python Kaggler

如果你梦想成为一名数据科学家,或者已然是数据科学家的你想扩展自己的工具库,那么,你找对地方啦。本文旨在为做数据分析的Python人提供一条全方位的学习之路,完整讲述运用Python进行数据分析的所有步骤。当然,如果你已经有了一些知识储备,或者无需掌握全部的内容,可以按照自己的需求做出调整,也欢迎与我们分享你是如何调整的。

你也可以参考本学习方法的迷你版 ——《 信息图表:Python数据科学学习之快速入门》。

本文推荐学习内容的全部清单,请关注并在公众号里回复“学神之路”即可下载!起步热身

开始这段学习旅程之前,第一个要回答的问题是:为什么使用Python?或者,Python怎样使用才有效?

请观看Data Robot创始人Jeremy 2014年在乌克兰的PyCon大会上的前30分钟的演讲,来了解Python是多么的奇妙!(在公众号里回复“学神之路”即可下载。)


第一步设置机器环境

既然你已经下定了决心,就开始设置机器环境吧。最简单的方法就是在Continuum.io下载分发包Anaconda。 这里材料应有尽有,美中不足就是即使在数据库提供了可用的更新资源时,你也要等Continuum自行更新。不过如果你是初学者的话,这点就无关紧要了。

如果你在安装过程中遇到任何问题,你可以在这里找到不同操作系统下更详细的安装说明。(在公众号里回复“学神之路”即可下载。)


第二步学习Python语言基础

首先你要理解语言、数据库和数据结构的基础知识。Codecademy 上的Python课程是这段学习之路的最佳起点。课程结束时,用Python写计算机脚本、理解类和对象这些对你来说应该早就驾轻就熟了。

学习重点:列表Lists,元组Tuples,字典Dictionaries,列表推导式,字典推导式。

学习任务:解决HackerRank上的一些Python教程题,这些题能让你更好的用Python脚本的方式去思考问题。

替代资源:如果交互式编码不是你的风格,可以参考谷歌的Python课程,这个两天的系列课程还涵盖了接下来要讨论的一些内容。(在公众号里回复“学神之路”即可下载。)

第三步学习Python正则表达式

进行数据清理经常需要使用正则表达式,处理文本数据时尤其如此。学习正则表达式的最佳方式就是完成谷歌课程,cheat sheet会让你使用正则表达式变得更加便捷熟练。

学习任务:做关于儿童名字的正则表达式练习

如果你仍需要更多练习,请参考文本整理的教程,它会锻炼你对处理数据的各个步骤的把握能力。(在公众号里回复“学神之路”即可下载。)

第四步学习Python科学数据库——NumPy, SciPy, Matplotlib和 Pandas有趣之处由此开始!下面是对各种数据库的一一介绍,让我们开始练习一些简单操作吧。

●系统练习NumPy 教程,尤其要练习arrays数组。这会为你接下来的学习打下良好的基础。

●接下来了解一下SciPy教程。浏览一下SciPy介绍和基本知识之后,学习其余你需要的部分。

●如果你猜这一步要讲Matplotlib教程——那就大错特错了。Matplotlib教程对我们目前的阶段来说综合性太强,这里我们推荐阅读ipython notebook前68行(就是到动画这一部分)。

●最后,让我们了解下Pandas。Pandas为Python提供DataFrame功能(类R语言),这也是值得你认真花时间练习的地方。Pandas有可能成为所有中型数据分析中最有效的工具。先看一下简单介绍《十分钟走近Pandas》(10 minutes to pandas),然后再转入Pandas教程的详细学习。

你也可以参考《Pandas探索性数据分析》(Exploratory Data Analysis with Pandas)和《Pandas数据处理》(Data munging with Pandas)里的内容。(在公众号里回复“学神之路”即可下载。)

其他资源:

●如果你需要有关Pandas和NumPy的书籍,Wes McKinney 写的《运用Python的数据分析》值得一读。

●有关Pandas文档的教程也有很多。

学习任务:完成哈佛CS109的课程作业。

第五步有效的数据可视化

学习CS109课程时,前两分钟可以忽略不看,不过后面的内容相当精彩!推荐结合作业学习本课程。(在公众号里回复“学神之路”即可下载。)

第六步学习Scikit-learn库,完成机器学习内容

现在,我们开始接触整个过程中最重要的部分了。Scikit-learn是机器学习领域最有用的Python数据库,在这里你可以查看数据库的概览。参考学习哈佛CS109课程第十节到第十八节课,你将能一览机器学习,回归、决策树方法、集成建模等监督算法,以及聚类算法等非监督式算法。可以参考上述课程的作业来规划自己的学习课程。

其他资源:

●如果说有哪本书可以作为必读书的话,推荐《集体智能编程》(Programming Collective Intelligence)—— 一部该领域的经典好书。●此外,你也可以学习Yaser Abu-Mostafa中机器学习课程中的一些优秀课程。如果你希望获得对技能更加深入浅出的解读,可以选择Andrew Ng的机器学习课程,并做一些有关Python的练习。

●Scikit learn的教程。

学习任务:尝试Kaggle上的挑战。(在公众号里回复“学神之路”即可下载。)

第七步练习,练习,再练习

恭喜你,你成功地完成了整个学神之路啦!

你现在已经具备了一切所需的技术技能,现在就是练习的事情了,还有比在Kaggle上与同行数据科学家切磋更好的方式么?那就出发吧,全身心投入到一个Kaggle的直播比赛中,倾尽所学放手一试吧!(在公众号里回复“学神之路”即可下载。)

第八步深度学习

现在你已经学习了大部分的机器学习技能,也是时候尝试一下深度学习了。你很有可能已经知道了深度学习的含义,当然我也可以给你们一个简单的介绍。

不过我对深度学习也不是特别了解,所以你在采纳这些建议时可以有所保留:deeplearning.net上有深度学习方面最全面的资源 ,你会发现这里应有尽有 —— 课程、数据集、挑战、各种教程等;或者你也可以尝试 Geoff Hinton的课程来试着理解神经网络(Neural Networks)的基础知识。(在公众号里回复“学神之路”即可下载。)

翻译:灯塔大数据

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

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多