[读书笔记] Python数据分析 (一) 准备工作
1. python中数据结构:矩阵,数组,数据框,通过关键列相互联系的多个表(SQL主键,外键),时间序列
2. python 解释型语言,程序员时间和CPU时间衡量,高频交易系统
3. 全局解释器锁GIL, Global Interpreter Lock防止解释器同时执行多个python字节码指令的机制
Cpython 可以继承OpenMP 实行并行处理循环而大幅度提高数值算法的速度
4. Numpy, pandas,matplotlib,Ipython,Scipy
Numpy:Python科学计算基础库,作为在算法之间传递数据的容器,Numpy数组比python内置数据结构更高效,低级语言如C可以直接操作Numpy数组中数据
- 快速高效的多维数组对象ndarray
- 对数组元素和数组整体进行数学运算
- 用于读写硬盘上基于数组的数据集工具
- 线性代数,傅里叶变换,随机数生成
- C, C++, Fortran代码集成到python工具
pandas:处理结构化数据的大量数据结构和函数
- 精确的索引,重塑,切片,切块,聚合,选取子集
- 高性能时间序列功能和工具
matplotlib:最流行的绘制数据图表的库
Ipython:增强的Python Shell, 为交互式和探索式计算提供了一个强健和高效的环境
- 交互式数据处理和绘图
- 类似于Mathematica 的HTML笔记本,通过Web浏览器连接Ipython
- 基于Qt框架的GUI控制台,含有绘图,多行编辑,语法高亮
- 交互式并行和分布式计算的基础架构
Scipy:科学计算工具包
- scipy.integrate: 数值积分和微分方程求解器
- scipy.linalg: 扩展了由numpy.linalg提供的线性代数例程和矩阵分解
- scipy.optimize: 函数优化器以及根查找算法
- scipy.signal: 信号处理工具
- scipy.sparse: 系数矩阵和系数线性系统求解
- scipy.stats: 标准连续和离散概率分布,统计检验等
- scipy.weave: 利用内联C++代码加速数组计算的工具