前言:
数据分析三剑客
数据分析就是让数据数据产生价值,通过数据的筛选、汇总等等操作从而分析或预测出事件的变化规律。python语言在数据分析领域同样扮演者比较强大的角色,其中被树枝的主要有三个扩展库用来做数据分析,分别是:numpy、pandas、matplotlib,其中,numpy则提供强大的科学计算、pandas主要是用作提炼数据使用、matplotlib负责数据可视化的操作,三者并成为python数据分析界的三大剑客。
numpy库是科学计算的基础库,为什么这么说呢?因为,pandas库依赖于numpy库,而matplotlib库依赖于numpy库和pandas库。如果只安装pandas库不安装numpy库,那么,pandas库不能正常运行。
正文:
科学计算库是由三个基础库组成的,也是人工智能,机器学习的基础库。
正文:
一、numpy简介
Numpy是高性能科学计算和数据分析的基础包,机器学习三剑客之一。Numpy库中最核心的部分是ndarray 对象,它封装了同构数据类型的n维数组。部分功能如下:
- ndarray, 具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组。
- 用于对整组数据进行快速运算的标准数学函数(无需编写循环)。
- 用于读写磁盘数据的工具以及用于操作内存映射文件的工具。
- 线性代数、随机数生成以及傅里叶变换功能。
- 用于集成C、C++、Fortran等语言编写的代码的工具。
二,pandas简介
Pandas 是python的一个数据分析包,最初由AQR Capital Management于2008年4月开发,并于2009年底开源出来,目前由专注于Python数据包开发的PyData开发team继续开发和维护,属于PyData项目的一部分。Pandas最初被作为金融数据分析工具而开发出来,因此,pandas为时间序列分析提供了很好的支持。 Pandas的名称来自于面板数据(panel data)和python数据分析(data analysis)。panel data是经济学中关于多维数据集的一个术语,在Pandas中也提供了panel的数据类型。
说人话就是,Pandas 一个强大的分析结构化数据的工具集,基于numpy库(提供高性能的矩阵运算)。Pandas 可以从各种文件格式比如 CSV、JSON、SQL、Microsoft Excel 导入数据。Pandas 可以对各种数据进行运算操作,比如归并、再成形、选择,还有数据清洗和数据加工特征。Pandas 广泛应用在学术、金融、统计学等各个数据分析领域。
三,matplotlib简介
matplotlib实际上是一套面向对象的绘图库,它所绘制的图表中的每个绘图元素,例如线条Line2D、文字Text、刻度等在内存中都有一个对象与之对应。
为了方便快速绘图matplotlib通过pyplot模块提供了一套和MATLAB类似的绘图API,将众多绘图对象所构成的复杂结构隐藏在这套API内部。我们只需要调用pyplot模块所提供的函数就可以实现快速绘图以及设置图表的各种细节。pyplot模块虽然用法简单,但不适合在较大的应用程序中使用。
matplotlib是数据分析流程里的最后一步:数据展示,也可以称之为结果展示。
数据分析流程通常为:数据源的获取或者生产----->数据清洗,数据加工----->数据展示,成果展示这样的三步流程。而numpy,pandas,matplotlib分别对应这三个流程。
四,科学计算之数据分析三剑客的安装建议和契合的IDE选择
三库的安装建议:
以上三个库建议使用linux操作系统安装,为什么是linux呢?因为,Windows安装第三方库有很多依赖不太好安装,通常,Windows安装第三方库需要借助anaconda这个第三方工具来解决依赖问题,由此给学习和训练造成更多的困扰,而linux操作系统安装第三方库比较的简单,基本是一条命令就可以搞定了,安装命令为(安装前设置好国内pip源即可,设置方法见我的博客:pip的官方源替换为国内高速镜像源_zsk_john的博客-CSDN博客_pip官方源):
pip install numpy pandas matplotlib
在linux操作系统下,基本这么一条命令就可以搞定三剑客的安装了。
契合三库的iDE:
而比较契合这三个库的IDE无疑就是jupyter了,首选jupyter的原因为matplotlib的代码写好后,可以在jupyter里立刻看到,所见即所得,十分的方便简单,如果使用pycharm这些比较重型的或者sublime这些常规的IDE,在使用之前是需要一些设置的。
jupyter的安装见我的博客:python学习之科学计算的jupyter安装和配置 day11_zsk_john的博客-CSDN博客