当前位置: 首页 > 编程笔记 >

Python常用数据分析模块原理解析

阎扬
2023-03-14
本文向大家介绍Python常用数据分析模块原理解析,包括了Python常用数据分析模块原理解析的使用技巧和注意事项,需要的朋友参考一下

前言

python是一门优秀的编程语言,而是python成为数据分析软件的是因为python强大的扩展模块。也就是这些python的扩展包让python可以做数据分析,主要包括numpy,scipy,pandas,matplotlib,scikit-learn等等诸多强大的模块,在结合上ipython交互工具 ,以及python强大的爬虫数据获取能力,字符串处理能力,让python成为完整的数据分析工具。

numpy

官网:https://www.scipy.org/

NumPy(Numerical Python的简称)是高性能科学计算和数据分析的基础包。NumPy最重要的一个特点就是其N维数组对象(即ndarray),该对象是一个快速而灵活的大数据集容器。可以利用这种数组对整块数据执行一些数学运算,比python自带的数组以及元组效率更高,其语法跟变量元素之间的运算一样,无需进行循环操作。

在使用python进行数据分析的过程中,我们大部分时候是不会直接使用numpy包,而是其他包要用到numpy。可以说numpy是整个python数据分析工作的基石。

举个简单的案例,我们要计算100000个随机数的值,如果传统编程需要写循环,用了2.2s,而使用numpy数据结构,则可以进行向量化操作,无需循环,只需要28.2ms节约大量时间。

In [1]: import numpy
In [2]: my_arr = np.arange(1000000)
In [3]: my_list = list(range(1000000))
In [4]: %time for _ in range(10): my_arr2 = my_arr * 2
Wall time: 28.2 ms
In [5]: %time for _ in range(10): my_list2 = [x * 2 for x in my_list]
Wall time: 2.2 s

pandas

官网:https://pandas.pydata.org/

Python Data Analysis Library,可根据需要帮助组织各种参数的数据。pandas基于numpy底层数据结构。让python成为类似Excel,R等统计学软件,主要就是pandas的功劳。pandas在python中实现了各种数据的计算 ,分组计算,添加删除,排序,筛选,抽样等都能工作。使Pandas成为数据科学家中最受欢迎的库。

pandas主要包含两种数据结构:Series与DataFrame。Series是一种类似于以为数组的对象,它由一组数据以及与之相关的数据标签组成,仅有一组数据即可产生最简单的Series。Series类似于R中的向量,属于以为数据。Series可以构成二维的DataFrame。行为记录值,列为观测值。如果熟悉R中的数据框DataFrame,在使用pandas则会轻松上手,因为作者自己说pandas的DataFrame就是模仿R的数据框。

scipy

官网:https://www.scipy.org/

scipy是一个用于数学、科学、工程领域的常用软件包,可以处理插值、积分、优化、图像处理、常微分方程数值解的求解、信号处理等问题。它用于有效计算Numpy矩阵,使Numpy和Scipy协同工作,高效解决问题。
Scipy是由针对特定任务的子模块组成:

matplotlib

官网:https://matplotlib.org/

matplotlib是python中优秀的数据可视化的包,根据命名就可以看到,它其实是一个matlib的plot库,也就是利用python将matlib的绘图功能实现了一遍。如果你熟悉matlib绘图,那么将直接上手。matplotlib是Python编程语言及其数值数学扩展包 NumPy的可视化操作界面。它为利用通用的图形用户界面工具包,如Tkinter, wxPython, Qt或GTK+向应用程序嵌入式绘图提供了应用程序接口(API)。

plotnine

官网:https://plotnine.readthedocs.io/en/stable/

如果你不熟悉matlib,而是从R转到python,可能不太喜欢matplotlib的绘图模式和风格,觉得不如R绘图方便。而且R还有ggplot2包。那么plotnine则是将ggplot2移植到python上,在python上完全重现ggplot2的功能。如果你熟悉ggplot2的语法,直接上手。不过,我倒是觉得这个工作意义不大,这属于重新发明轮子,后面如果ggplot2在更新了,二者之间还是会有一些差别,用户会有些困扰。当然,这样的问题仁者见仁,愚者见愚。聊胜于无,如果想在 python环境中完成全部工作,有了这个包还是非常不错的。

scikit-learn

官网:https://scikit-learn.org/stable/

有很多人不是天天喜欢三句话不离大数据,机器学习,人工智能吗。那么scikit-learn则是完成python大数据机器学习的包。scikit-Learn是python数据分析中非常重要的一个模块,它是一个基于NumPy和SciPy构建的开源机器学习工具包。 它具有常用的ML算法,可用于预处理,分类,回归以及聚类。算法包括[支持向量机]( support vector machines,ridge回归, 网格搜索算法(Grid Search algorithm) ,k均值聚类等等。另外还有样本数据集。API易学易用。 在几乎所有平台上的良好性能,它在学术和商业用途中都很受欢迎。

其他:

除了以上包之外,python还有很多很多其他有关数据分析的包,不胜枚举,比如图片识别的opencv,google机器学习开源库tensorflow,PyTorch等等,一个崭新的世界等待你去发现。但是前提是前面基础这些包熟悉了,以及有最核心的计算机以及统计学基础,否则就是无水之源,无木之本,你所谓的人工智能,只能是人工智障。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。

 类似资料:
  • 本文向大家介绍Python中functools模块的常用函数解析,包括了Python中functools模块的常用函数解析的使用技巧和注意事项,需要的朋友参考一下 1.partial 首先是partial函数,它可以重新绑定函数的可选参数,生成一个callable的partial对象: 从中可以看出,唯一要注意的是可选参数必须写出参数名。 2.update_wrapper 接着是update_wr

  • 本文向大家介绍python爬虫常用的模块分析,包括了python爬虫常用的模块分析的使用技巧和注意事项,需要的朋友参考一下 本文对Python爬虫常用的模块做了较为深入的分析,并以实例加以深入说明。分享给大家供大家参考之用。具体分析如下: creepy模块 某台湾大神开发的,功能简单,能够自动抓取某个网站的所有内容,当然你也可以设定哪些url需要抓。 地址:https://pypi.python.

  • 本文向大家介绍Python正则re模块使用步骤及原理解析,包括了Python正则re模块使用步骤及原理解析的使用技巧和注意事项,需要的朋友参考一下 python中使用正则表达式的步骤: 1.导入re模块:import re 2.初始化一个Regex对象:re.compile() 3.刚刚创建的Regex对象调用search方法进行匹配,返回要给March对象 4.刚刚的March对象调用group

  • 本文向大家介绍Python异常模块traceback用法实例分析,包括了Python异常模块traceback用法实例分析的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python异常模块traceback用法。分享给大家供大家参考,具体如下: traceback模块被用来跟踪异常返回信息. 如下例所示: 将会在控制台输出类似结果: Traceback (most recent call

  • 本文向大家介绍Python自动化办公Excel模块openpyxl原理及用法解析,包括了Python自动化办公Excel模块openpyxl原理及用法解析的使用技巧和注意事项,需要的朋友参考一下 openpyxl 介绍 openpyxl 是一个直接可用于读写 xlsx 、xlsm、xltx、xltm 文件的 Python 内置库,借助它可以利用 Python 语法对本地 xlsx 文件进行自动化批

  • 本文向大家介绍Python struct模块解析,包括了Python struct模块解析的使用技巧和注意事项,需要的朋友参考一下 python提供了一个struct模块来提供转换。下面就介绍这个模块中的几个方法。     struct.pack(): struct.pack用于将Python的值根据格式符,转换为字符串(因为Python中没有字节(Byte)类型,可以把这里的字符串理解为字节流,