admin管理员组

文章数量:1664593

1.Numpy

NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。

使用NumPy,开发人员可以执行以下操作:

  • 数组的算数和逻辑运算。

  • 傅立叶变换和用于图形操作的例程。

  • 与线性代数有关的操作。 NumPy 拥有线性代数和随机数生成的内置函数。

其它很多库都以NumPy作为基础,比如说Tensorflow利用NumPy作为张量处理后端。

基于Numpy,你可以定义任意数据类型并很方便地与任意数据库打交道。Numpy也可以用作任意通用数据的多维容器。

2.Matplotlib

matplotlib 就是 python 的绘图库,一个 Python 2D/3D 绘图库,用以绘制一些高质量的数学二维图形。在他之上,Seaborn-使用 Matplotlib 的统计数据可视化,当然 python 还提供了其他的绘图库,每个绘图库都有自己的特色。同时Matplotlib 通常与 NumPy、Pandas 一起使用,是数据分析中不可或缺的重要工具之一,可视化效果绝佳,它还提供了一个面向对象的 API,可用于将这些绘图嵌入到应用程序中。

  • matplotlib 官网:https://matplotlib/

  • matplotlib 官网例图:https://matplotlib/gallery.html

  • 使用技巧:建议优先阅读本文并对照实际操作一遍,然后打开例图网页https://matplotlib/gallery.html,选择需要的图片类型,点击进入复制代码,修改代码,制作自己所需风格的图即可。

3.Pandas

Pandas是Python中最流行的数据分析库之一,由Wes McKinney于2008年创建。它的名称来源于"Panel Data"(面板数据)的缩写。它提供了强大的数据处理和分析工具,使得数据的导入、清洗、转换和分析变得更加高效和便捷。Pandas的主要数据结构包括DataFrame和Series:

  • DataFrame:类似于电子表格或SQL表格,是二维的数据结构,具有行和列。每一列可以包含不同类型的数据(整数、浮点数、字符串等)。
  • Series:是一维的数据结构,类似于数组或列表,但具有标签,可以通过标签进行索引。

特点包括:

  • 数据对齐:Pandas可以自动对齐不同索引的数据,使得数据操作更加方便。
  • 处理缺失值:Pandas提供了强大的工具来处理缺失值,包括删除、填充等操作。
  • 强大的数据分析功能:Pandas支持各种数据分析和统计计算,如平均值、中位数、标准差等。
  • 灵活的数据导入和导出:Pandas可以读取和写入多种数据格式,包括CSV、Excel、SQL数据库、JSON等。
  • 数据清洗和转换:Pandas提供了丰富的数据清洗和转换函数,用于数据的预处理和整理。

4.Scikit-learn

Scikit-learn的发展始于2007年,由David Cournapeau在Google Summer of Code项目中启动。项目后续得到了许多开发者的贡献,包括INRIA(法国国家信息与自动化研究所),Waikato大学和其他机构。

项目之所以取名为Scikit-Learn,也是因为该算法库是基于SciPy来进行的构建,而Scikit则是SciPy Kit(SciPy衍生的工具套件)的简称

Scikit-learn是目前机器学习领域最完整、同时也是最具影响力的算法库。它基于Numpy, Scipy和matplotlib,包含了大量的机器学习算法实现,包括分类、回归、聚类和降维等,还包含了诸多模型评估及选择的方法。Scikit-learn的API设计的非常清晰,易于使用和理解,适合于新手入门,同时也满足了专业人士在实际问题解决中的需求。

Scikit-learn将所有的评估器和函数功能分为六大类,分别是分类模型(Classification)、回归模型(Regression)、聚类模型(Clustering)、降维方法(Dimensionality reduction)、模型选择(Model selection)和数据预处理(Preprocessing)六大类。

  • 数据预处理(Preprocessing):转换输入数据,规范化、编码化。包括preprocessing,feature_extraction,transformer(转换器)等模块
  • 降维方法(Dimensionality reduction):用于Visualization(可视化),Increased efficiency(提高效率)。典型算法有主成分分析(PCA)、非负矩阵分解(NMF),feature_selection(特征选择)等
  • 分类模型(Classification):二元分类问题、多分类问题、Image recognition 图像识别等。典型算法有逻辑回归、SVM,最近邻,随机森林,Naïve Bayes,神经网络等
  • 回归模型(Regression):典型算法有线性回归、SVR,ridge regression,Lasso,最小角回归(LARS)等
  • 聚类模型(Clustering):  典型算法有k-Means,spectral clustering(谱聚类),mean-shift(均值漂移)等
  • 模型选择(Model selection):通过参数调整提高精度,包括pipeline(流水线),grid_search(网格搜索),cross_validation( 交叉验证),metrics(度量),learning_curve(学习曲线)等

此外,还有模型融合和辅助工具板块。模型融合包含:ensemble(集成学习)辅助工具包含:exceptions(异常和警告)、dataset(自带数据集)、utils、sklearn.base等。

本文标签: 数据库机器基础Python