Pandas是什么
Pandas 是 Python 数据分析的利器,也是各种数据建模的基本工具。Pandas 最初被应用于金融量化交易领域,现在它的应用领域更加广泛,涵盖了工业、农业、交通等许多行业。
Pandas 是 Python 基于 NumPy 和 Matplotlib 的第三方数据分析库,与后两者一起构成了 Python 数据分析的基础工具程序包,有 Python 数据分析“三剑客”之称。
Series 是一维数组,与 NumPy 中的一维 Array 类似。二者与 Python 的基本数据结构 List 也很相近,其区别是:List 中可以存储不同的数据类型,而 Array 和 Series 中只允许存储相同的数据类型,这样可以更有效地使用内存,提高运算效率。
DataFrame 是二维数组,非常接近 Excel 电子表格或者类似 MySQL 数据库的形式。它的竖行称为列(columns),横行称为行(index),也就是说数据的位置是通过 columns 和 index 来确定的。可以将 DataFrame 理解为 Series 的容器。
这两种数据结构可以处理金融、统计、社会科学、工程等领域里的绝大多数数据。
正是基于这些强大的数据分析与处理能力,Pandas 还有数据处理“瑞士军刀”的美称。
Pandas 是 Python 基于 NumPy 和 Matplotlib 的第三方数据分析库,与后两者一起构成了 Python 数据分析的基础工具程序包,有 Python 数据分析“三剑客”之称。
Pandas的主要数据结构
Pandas 的主要数据结构有两种,分别是 Series 与 DataFrame。Series 是一维数组,与 NumPy 中的一维 Array 类似。二者与 Python 的基本数据结构 List 也很相近,其区别是:List 中可以存储不同的数据类型,而 Array 和 Series 中只允许存储相同的数据类型,这样可以更有效地使用内存,提高运算效率。
DataFrame 是二维数组,非常接近 Excel 电子表格或者类似 MySQL 数据库的形式。它的竖行称为列(columns),横行称为行(index),也就是说数据的位置是通过 columns 和 index 来确定的。可以将 DataFrame 理解为 Series 的容器。
这两种数据结构可以处理金融、统计、社会科学、工程等领域里的绝大多数数据。
Pandas的优势
Pandas 主要面向数据处理与分析,其优势主要表现在 7 个方面,具体如下。- 相比 NumPy 仅支持数字索引,Pandas 的两种数据结构均支持标签索引,所以 Pandas 具有便捷的数据读写操作功能。
- 类比 SQL 的 join 和 groupby 功能,Pandas 可以很容易实现这两个核心功能,实际上,SQL 的绝大部分操作在 Pandas 中都可以实现。
- 类比 Excel 的数据透视表功能,Excel 中最为强大的数据分析工具之一是数据透视表,这在 Pandas 中也可轻松实现。
- 自带正则表达式的字符串向量化操作,可以对 Pandas 中的一列字符串进行函数操作。
- Pandas 具有丰富的时间序列向量化处理接口。
- Pandas 具有常用的数据分析与统计功能,包括基本统计量、分组统计分析等。
- Pandas 集成 Matplotlib 的常用可视化接口,无论是 Series 还是 DataFrame,均支持面向对象的绘图接口。
正是基于这些强大的数据分析与处理能力,Pandas 还有数据处理“瑞士军刀”的美称。