【呆鸟译Py】学习Python数据分析的正确姿势

原文作者:Manu Jeevan

原文地址:How to Learn Python for Data Science the Right Way

如果你是通过学习给程序员设计的 Python 课程来学习 Python 数据分析,那就大错特错了。很多数据分析师在开始学习 Python 数据分析之前就被引导学习 LeetCode 上那些为程序员准备的编程谜题。这对于只需要提取、清洗数据、绘制可视化图、构建模型的数据分析师来说实在是误人子弟,数据分析师要学的不是开发应用软件,而是应该把时间和精力花在学习处理数据的模块与支持库上。请根据以下步骤一步步学习的Python 数据科学。

配置开发环境

Jupyter Notebook 是一个非常强大的开发环境,而且非常适合展示数据分析的结果。

Anaconda 是安装 Jupyter Notebook 最简单的方式,它是现在最流行的 Python 数据科学发行版,预装了很多最流行的支持库。

Anaconda

建议安装 Anaconda 时,选择支持 Python 3 最新版的版本。

安装好 Anaconda 以后,阅读这篇文章学习如何使用 Jupyter Notebook。

呆鸟云:也可以参考 DataCamp 的 Jupyter Notebook 速查表,点击链接可以下载呆鸟为大家精心制作的高清中文版哦!

Jupyter Notebook 速查表

学些 Python 基础就够了

参考 DataCamp 的 Python 数据科学速查表,即可快速掌握 Python 的基础知识,如果想学习更多 Python 的基础知识,推荐看《Python基础教程(第3版)》

Python基础教程
Python 数据科学速查表

Numpy 与 pandas 才是数据分析师要学的东西

Python 处理大规模数据,执行数字处理算法其实很慢。听到这里大家可能会问,那你凭什么说 Python 是最流行的数据分析编程语言?

这是因为 Python 有基于 C 与 Fortran 开发的支持库,就是接下来要说的 Numpy 与 Pandas。

数据分析师要学的首先是 Numpy。这是 Python 数据科学计算里最基本的支持库。Numpy 支持高度优化的多维数组,这是绝大多数机器学习算法里最基础的数据结构。

接下来要学的是 Pandas,要知道数据分析师的时间绝大多数都是花在清理数据上。Pandas 是最流行的数据处理支持库,它是 Numpy 的扩展,它的底层代码是基于 Numpy 开发的。Pandas 最主要的数据结构叫 DataFrame。

Pandas 的作者 Wes McKinney 编著的《利用 Python 进行数据分析》一书是学习的Pandas 最好的资料,该书第 4、5、7、8、10 这几章主要介绍 Numpy 与 Pandas,涵盖了这两个支持库操控数据的大部分功能。

呆鸟云:这里推荐阅读 Sean 的译本《利用Python进行数据分析·第2版》,
想要快速了解,也可以参考 DataCamp 的 Numpy 与 Pandas 速查表,点击链接可以下载呆鸟为大家精心制作的高清中文版哦!

Numpy 速查表
Pandas 基础速查表
Pandas 高阶速查表

学习用 Matplotlib 绘制可视化图

Matplotlib 是绘制基础可视化图的 Python 支持库。数据分析师至少要掌握如何使用Matplotlib 绘制最常用的可视图,包括折线图、条形图、散点图与箱型图等。

Seaborn 这个可视化支持库也很好用,它基于 Matplotlib 开发,并与 Pandas 高度集成。在初级阶段,建议先掌握 Matplotlib 的基础绘图法,不用过多了解 Seaborn。

本文作者曾写过下列四个教程介绍如何使用 Matplotlib 绘制可视图。

第一部分:Matplotlib 基础图形
第二部分:如何设置图形样式与颜色、线型、标签、色图等
第三部分:注解、坐标轴、图形比率、坐标系
第四部分:绘制复杂可视图

学完这四个教程后,就算是掌握了 Matplotlib 的基本操作。

友情提示,如今不用花太多时间学习 Matplotlib,很多公司现在都采用 Tableau 或 Qlik 这样的 BI 工具生成交互式可视化图。

呆鸟云:也可以参考 DataCamp 的 Matplotlib 速查表,点击链接可以下载呆鸟为大家精心制作的高清中文版哦!

Matplotlib 速查表
Seaborn 速查表

左手 SQL,右手 Python

现在,公司的数据都存在数据库里,因此,数据分析师要学会用 SQL 从数据库里提取数据,然后再在 Jupyter Notebook 里分析数据。

SQL 与 Pandas 是数据分析师的两大利器。有些简单的数据分析可以直接用 SQL 处理,有些用 Pandas 则更高效。我个人喜欢用 SQL 提取数据,然后用 Pandas 分析数据。

现在很多公司都采用 Mode AnalyticsDatabricks 这样的分析平台,可以轻松应用 Python 与 SQL 进行数据分析。

总之,数据分析师要了解如何高效使用 SQL 与 Python。推荐用 SQLite 学习 SQL 基础知识,上手简单,无需复杂配置。安装 SQLite,找个示例 CSV 文件,然后学习如何使用 SQL 与 Python 分析数据。这里有个帖子,可以指导你如何使用 Python 与 SQL 进行数据分析。Programming with Databases in Python using SQLite

在浏览这篇帖子前,最好先了解一下 SQL 基础知识,Mode Analytics 有一篇教程非常不错:SQL 简介。掌握 SQL 是每位数据分析师必备的基本技能,只有掌握了 SQL 才能高效地从数据库里提取数据。

学习应用 Python 实践基础统计学理论

大多数野心勃勃的数据分析师上来就学习机器学习,却对统计学的基础知识不屑一顾。

千万别犯这种低级错误,统计学才是数据分析的支柱。另一方面,也不能只学习统计学的理论知识,却忽略了统计学实战操作。

所谓统计学实战,这里指的是,数据分析师应该懂得统计学能解决哪些问题,如何应用统计学处理各种难题。

以下是数据分析师必须精通的一些基本统计学概念:

采样、频率分布、均值、中位数、众数、变异性度量、概率基础知识、显著性测试,标准差,z-score,置信区间与假设检验(包括 A/B 测试)。

《面向数据科学家的实用统计学》这本书非常不错,可惜这本书里的代码示例都是用 R 语言写的,Python 爱好者可能会有些许不爽,建议 Python 数据分析师读这本书前四章就可以了。读了前四章就可以了解上面所说的基础统计学概念。这本书后面几章主要是介绍机器学习,下一段会对这方面内容进行详述。

《面向数据科学家的实用统计学》

还有不少人推荐《统计思维:程序员数学之概率统计(第2版)》这本书,这本书确实是用 Python 学统计学,但该书作者用的不是 StatsModels 这样的标准 Python 支持库介绍统计学,而是用自己写的函数,不具备通用性,因此,不太推荐本书。

统计思维

学完统计学的基础知识后,建议大家尝试学着用 Python 实现这些基本概念。StatsModels 这个 Python 支持库现在非常流行,其官网上的教程也不错,值得一看。

此外,还推荐 Gaël Varoquaux[1] 的视频教程,该教程介绍了如何使用 Python 与 StatsModels 实现推断性与探索性统计分析。

用 Scikit-Learn 实现机器学习

Scikit-Learn 是 Python 生态圈里最流行的机器学习库。对于大部分数据分析师来说,第一步目标就是学习如何使用 Scikit-Learn 执行最常见的机器学习算法。

首先,学习 Coursera 上吴恩达的机器学习教程,只要看第 1、2、3、6、7、8 周的视频就可以了。这里跳过了关于神经网络的内容,因为作为初学者来说,只需要关注最常用的机器学习技能就足够了。

学会了这些内容以后,接下来继续学习《机器学习实战:基于Scikit-Learn和TensorFlow 》。初学者只要阅读这本书的第一部分就可以了,大概有 300 多页。这是市面上介绍实战机器学习最好的一本书。

机器学习实战

呆鸟云:这里推荐 Sean 的译本《Scikit-Learn 与 TensorFlow 机器学习实用指南》

做完这本书里列出的习题以后,就可以学习如何用 Python 实践吴恩达机器学习课程里讲述的理论知识了。

结论

最后一步是用上述各步列出的知识动手实战一个数据科学项目。建议大家找一套自己感兴趣的数据集,提出一些有意思的业务问题,然后通过分析解答这些问题。但是,记住千万别再搞泰坦尼克鸢尾花这样的机器学习项目了,都臭了大街了。这个帖子里列出了 19 个查找数据科学项目免费数据集的网站,大家可以看下。

还有一个大家可能喜欢的数据科学实战项目,这就是预测股市价格。通过雅虎金融可以实时抓取股票数据,把这些数据存到 SQL 数据库里,然后用机器学习预测股票价格。

如果你是从其他行业或职能转行做数据分析的,建议在工作中一定要充分利用自己已有的业务知识。

呆鸟云:“翻译不易,四处求证、三天翻译、两天校对,只求一秒点赞。”


  1. 链接:https://pan.baidu.com/s/1VCrsWp59X-Hr7yYdAbRdHA 提取码:ky82

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,132评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,802评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,566评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,858评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,867评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,695评论 1 282
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,064评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,705评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,915评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,677评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,796评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,432评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,041评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,992评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,223评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,185评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,535评论 2 343

推荐阅读更多精彩内容