什么是Pandas?

江湖上流传着这么一句话——分析不识潘大师(PANDAS),纵是老手也枉然。

Pandaspython+data+analysis的组合缩写,是python中基于numpy和matplotlib的第三方数据分析库,与后两者共同构成了python数据分析的基础工具包,享有数分三剑客之名。Pandas 的目标是成为 Python 数据分析实践与实战的必备高级工具,其长远目标是成为最强大、最灵活、可以支持任何语言的开源数据分析工具


Pandas 适用的数据类型

  • 与 SQL 或 Excel 表类似的,含异构列的表格数据;

  • 有序和无序(非固定频率)的时间序列数据;

  • 带行列标签的矩阵数据,包括同构或异构型数据;

  • 任意其它形式的观测、统计数据集, 数据转入 Pandas 数据结构时不必事先标记。

Pandas的特色功能

  • 按索引匹配的广播机制,这里的广播机制与numpy广播机制还有很大不同
  • 便捷的数据读写操作,相比于numpy仅支持数字索引,pandas的两种数据结构均支持标签索引,包括bool索引也是支持的
  • 类比SQL的join和groupby功能,pandas可以很容易实现SQL这两个核心功能,实际上,SQL的绝大部分DQL和DML操作在pandas中都可以实现
  • 类比Excel的数据透视表功能,Excel中最为强大的数据分析工具之一是数据透视表,这在pandas中也可轻松实现
  • 自带正则表达式的字符串向量化操作,对pandas中的一列字符串进行通函数操作,而且自带正则表达式的大部分接口
  • 丰富的时间序列向量化处理接口
  • 常用的数据分析与统计功能,包括基本统计量、分组统计分析等
  • 集成matplotlib的常用可视化接口,无论是series还是dataframe,均支持面向对象的绘图接口