本文是 《Python for Data Analysis》译文的笔记,也是一个总结。
学习 python,无论是开发还是机器学习,都应掌握数据分析基础,推荐看这本书并进行相关练习。Github 地址
我会按章节整理我认为重要的内容,供参考。
系列文章:Python 数据分析
一、准备工作
数据分析
一些常见的数据分析工作——
- 与外部世界交互:文件读写,数据存储
- 数据准备:清洗、修改、结合、标准化、重塑、切片、切割、转换数据以进行分析
- 转换数据:旧数据集通过计算和统计操作生成新数据集
- 建模和计算:把数据用于统计模型和机器学习算法等
- 展示:如图表可视化
无论你学的是机器学习、深度学习或是其他,想必都离不开上述任务,所以学好数据分析非常重要!
结构化数据
一般说的数据指结构化数据,包括但不限于表格型数据,多维数组「矩阵」,通过关键列相互联系的多个表「SQL」。
重要的 Python 库
- Numpy
- 最常用的是数组处理能力
- 快速高效的多维数组 ndarray
- 对数组执行元素级的运算和对数组直接执行数学运算的函数
- pandas
- 提供了便捷处理结构化数据的 数据结构和函数
- 常用对象有 DataFrame 「二维」 和 Series「一维」
- 常用功能有 索引,切片聚合等
- matplotlib
- 常用来绘制图表和二维数据可视化
- IPython->jupyter
- Ipython 目前是用于编写、测试、调试 Python 代码的强大 shell
- Jupyter Notebook 是一个支持多语言的交互式网络代码“笔记本”
- Ipython + Jupyter Notebook 可以实现在浏览器上写 Python 代码,适合数据探索和可视化
- Jupyter Notebook 除了写 Python 代码还能写 Markdown 和 HTML 代码「创建代码 + 文本」
- Scipy
- 科学计算包的集合,比如想求积分和微分可以用 scipy.integrate 包
- Numpy + Scipy 结合使用,处理传统的科学计算问题
- Scikit-learn
- Python 的通用的机器学习包,即实现好了机器学习算法
- 子模块包括 分类、回归、聚类、降维、选型、预处理
- statsmodels
- 一个统计分析包,包含经典统计学和经济计量学的算法
- statsmodels 关注统计推断, scikit-learn 注重预测
Python 安装和 Python 库的安装
- 总体分为两种:
- 一、直接安装 Python「推荐 Python3.6 ,Python2 以后不维护了,Python3.7 有的包不适用,python 包都得自己手动安装」
- 二、安装 Anaconda「一个python的发行版,包括了python和很多常见的软件库, 和一个包管理器conda。常见的科学计算类的库都包含在里面了,使得安装比常规python安装要容易」
- 不同操作系统安装方法不同「windows,mac OS 和 Linux」
- 两种包的安装和升级工具 pip 和 conda
集成开发环境 IDE
就像 Java的 IDE 有 Eclipse,Python 也有 IDE,我用都是 Pycharm。
- PyDev(免费),基于 Eclipse 平台的IDE;
- JetBrains 的 PyCharm(商业用户需要订阅,开源开发者免费);
- Visual Studio(Windows用户)的 Python Tools;
- Spyder(免费),Anaconda 附带的 IDE;
- Komodo IDE(商业)