![b925787b8294afe281843dc2d446cf6c.png](https://img-blog.csdnimg.cn/img_convert/b925787b8294afe281843dc2d446cf6c.png)
Python个人认为并不是一个编程的好语言,但是作为数据处理尤其是互动实时操作确实非常的便利,因此不得不学习一下。作为python数据处理的三剑客:numpy、pandas、matplotlib是必须熟悉的;其中的numpy和pandas更是绕不过去的两个工具包,而学习则是需要从两者的区别开始。
Numpy 是
Python 专门处理高维数组 (high dimensional array) 的计算包,个人理解就是创建多维数组,并且通过
数组存载
、
数组获取
、
数组变形
、和
数组计算把数组这个“面团”揉成我们所需要的形态,然后进行高效处理;引用网络上的一张图片来可视一下(王的机器):
![507203c5365e137566ad7067437328be.png](https://img-blog.csdnimg.cn/img_convert/507203c5365e137566ad7067437328be.png)
要理解数组,必须知道它在内存里的样子才能真正理解;其实高维数组也只是通过一列有序数列加指针存储的;
![3ce6e6ee3b86a038b9fdd1c446fae004.png](https://img-blog.csdnimg.cn/img_convert/3ce6e6ee3b86a038b9fdd1c446fae004.png)
主要内容的导图
![d0e85bada5044f21cdf2ef01a2c521b4.png](https://img-blog.csdnimg.cn/img_convert/d0e85bada5044f21cdf2ef01a2c521b4.png)
Pandas
是创建和处理数据表这个对象,即除了指针还有index的,然后就是
数据表的创建
、
数据表的存载
、
数据表的获取
、
数据表的合并和连接、数据表的重塑和透视
、和
数据表的分组和整合一整套操作;比较一下numpy和pandas就非常清晰差别了。
![d5a246ab82b1b9ddbca2b4596b666998.png](https://img-blog.csdnimg.cn/img_convert/d5a246ab82b1b9ddbca2b4596b666998.png)
数据表的三大类型
Series: 一维数据,类似于 python 中的基本数据的 list 或 NumPy 中的 1D array;Pandas 里最基本的数据结构
DataFrame: 二维数据,类似于 R 中的 data.frame 或 Matlab 中的 Tables;DataFrame 是 Series 的容器
Panel:三维数据;Panel 是 DataFrame 的容器
其实numpy的数组也应该是有index的,无非是隐藏的有序的,应该也是key-value形式的吧。另外,也可以这样说,pandas是基于numpy的基础上的进一步的数据处理包。
![30e2e9129a9361ed45105e510bc7ba70.png](https://img-blog.csdnimg.cn/img_convert/30e2e9129a9361ed45105e510bc7ba70.png)