学习 Python 数据分析的正确姿势
原文作者:Manu Jeevan
原文地址:How to Learn Python for Data Science the Right Way
推荐阅读:
Python大咖谈 - Kenneth Reitz 与 Mike Driscoll
Python大咖谈 - Brett Cannon
如果你是通过学习给程序员设计的 Python 课程来学习 Python 数据分析,那就大错特错了。很多数据分析师在开始学习 Python 数据分析之前就被引导学习 LeetCode 上那些为程序员准备的编程谜题。这对于只需要提取、清洗数据、绘制可视化图、构建模型的数据分析师来说实在是误人子弟,数据分析师要学的不是开发应用软件,而是应该把时间和精力花在学习处理数据的模块与支持库上。请根据以下步骤一步步学习的Python 数据科学。
配置开发环境
Jupyter Notebook 是一个非常强大的开发环境,而且非常适合展示数据分析的结果。
Anaconda 是安装 Jupyter Notebook 最简单的方式,它是现在最流行的 Python 数据科学发行版,预装了很多最流行的支持库。
建议安装 Anaconda 时,选择支持 Python 3 最新版的版本。
安装好 Anaconda 以后,阅读这篇文章学习如何使用 Jupyter Notebook。
呆鸟云:也可以参考 DataCamp 的 Jupyter Notebook 速查表,点击链接可以下载呆鸟为大家精心制作的高清中文版哦!
学些 Python 基础就够了
参考 DataCamp 的 Python 数据科学速查表,即可快速掌握 Python 的基础知识,如果想学习更多 Python 的基础知识,推荐看《Python基础教程(第3版)》。
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 速查表,点击链接可以下载呆鸟为大家精心制作的高清中文版哦!
学习用 Matplotlib 绘制可视化图
Matplotlib 是绘制基础可视化图的 Python 支持库。数据分析师至少要掌握如何使用Matplotlib 绘制最常用的可视图,包括折线图、条形图、散点图与箱型图等。
Seaborn 这个可视化支持库也很好用,它基于 Matplotlib 开发,并与 Pandas 高度集成。在初级阶段,建议先掌握 Matplotlib 的基础绘图法,不用过多了解 Seaborn。
本文作者曾写过下列四个教程介绍如何使用 Matplotlib 绘制可视图。
第一部分:Matplotlib 基础图形
第二部分:如何设置图形样式与颜色、线型、标签、色图等
第三部分:注解、坐标轴、图形比率、坐标系
第四部分:绘制复杂可视图
学完这四个教程后,就算是掌握了 Matplotlib 的基本操作。
友情提示,如今不用花太多时间学习 Matplotlib,很多公司现在都采用 Tableau 或 Qlik 这样的 BI 工具生成交互式可视化图。
呆鸟云:也可以参考 DataCamp 的 Matplotlib 速查表,点击链接可以下载呆鸟为大家精心制作的高清中文版哦!
左手 SQL,右手 Python
现在,公司的数据都存在数据库里,因此,数据分析师要学会用 SQL 从数据库里提取数据,然后再在 Jupyter Notebook 里分析数据。
SQL 与 Pandas 是数据分析师的两大利器。有些简单的数据分析可以直接用 SQL 处理,有些用 Pandas 则更高效。我个人喜欢用 SQL 提取数据,然后用 Pandas 分析数据。
现在很多公司都采用 Mode Analytics 与 Databricks 这样的分析平台,可以轻松应用 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 才能高效地从数据库里提取数据。
呆鸟云:这里帮大伟做个广告,他的 《跟着大伟学SQL:从基础到进阶,从刷题到面试》非常不错,说实话比原文作者推荐的文章实用多了