重要的Python库
NumPy
NumPy(Numerical Python的简称)是Python科学计算的基础包。
涵盖以下功能:
- 快速高效的多维数组对象ndarray。
- 用于对数组执行元素级计算以及直接对数组执行数学运算的函数。
- 用于读写硬盘上基于数组的数据集的工具。
- 线性代数运算、傅里叶变换,以及随机数生成。
pandas
pandas提供了快速便捷处理结构化数据的大量数据结构和函数。
pandas兼具NumPy高性能的数组计算功能以及电子表格和关系型数据库(如SQL)灵活的数据处理功能。它提供了复杂精细的索引功能,能更加便捷地完成重塑、切片和切块、聚合以及选取数据子集等操作。
matplotlib
matplotlib是最流行的用于绘制图表和其它二维数据可视化的Python库。
SciPy
SciPy是一组专门解决科学计算中各种标准问题域的包的集合.
主要涵盖以下包:
- scipy.integrate:数值积分例程和微分方程求解器。
- scipy.linalg:扩展了由numpy.linalg提供的线性代数例程和矩阵分解功能。
- scipy.optimize:函数优化器(最小化器)以及根查找算法。
- scipy.signal:信号处理工具。
- scipy.sparse:稀疏矩阵和稀疏线性系统求解器。
- scipy.special:SPECFUN(这是一个实现了许多常用数学函数(如伽玛函数)的Fortran库)的包装器。
- scipy.stats:标准连续和离散概率分布(如密度函数、采样器、连续分布函数等)、各种统计检验方法,以及更好的描述统计法。
scikit-learn
scikit-learn成为了Python的通用机器学习工具包。
它的子模块包括:
- 分类:SVM、近邻、随机森林、逻辑回归等等。
- 回归:Lasso、岭回归等等。
- 聚类:k-均值、谱聚类等等。
- 降维:PCA、特征选择、矩阵分解等等。
- 选型:网格搜索、交叉验证、度量。
- 预处理:特征提取、标准化。
statsmodels
statsmodels是一个统计分析包,起源于斯坦福大学统计学教授Jonathan Taylor,他设计了多种流行于R语言的回归分析模型。
statsmodels包含经典统计学和经济计量学的算法。包括如下子模块:
- 回归模型:线性回归,广义线性模型,健壮线性模型,线性混合效应模型等等。
- 方差分析(ANOVA)。
- 时间序列分析:AR,ARMA,ARIMA,VAR和其它模型。
- 非参数方法: 核密度估计,核回归。
- 统计模型结果可视化。