Pandas DataFrame 是处理表格数据的核心数据结构,这些数据通常由行和列组成。虽然 Pandas 也提供了用于一维带标签数据的 Series,但 DataFrame 是管理多维数据集的重要工具,可说是 Pandas 中最主要的数据结构。它直接受到 R 编程语言中数据帧概念的启发。可以将 DataFrame 看作一个普适的二维表格,类似于你在 Microsoft Excel 中使用的电子表格,或 SQL 数据库中的表。它旨在以结构化的方式存放数据,方便处理和分析。以下是 DataFrame 的主要特点:二维: 它同时具有行和列,形成网格状结构。带标签的轴: 行和列都有标签。行标签统称为 index,列标签称为 columns。这使得根据这些标签而非仅仅整数位置来获取数据变得更直接。异构数据类型: 与通常只存储单一数据类型的 NumPy 数组不同,DataFrame 中的列可以包含不同的数据类型(例如:整数、浮点数、字符串、布尔值、Python 对象)。大小可变: 通常,在 DataFrame 创建后,你可以添加或移除列。添加或移除行也是可行的。与 Series 的关系: 你可以将 DataFrame 理解为 Series 对象的字典或集合,其中每个 Series 代表一列。DataFrame 中的所有 Series(列)共享相同的索引(行标签)。digraph DataFrame { rankdir=LR; node [shape=plaintext, fontname="sans-serif"]; struct [label=< <TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0" COLOR="#adb5bd"> <TR><TD BGCOLOR="#dee2e6" SIDES="B"></TD><TD BGCOLOR="#ced4da" ALIGN="CENTER">列 'Name' (对象/字符串)</TD><TD BGCOLOR="#ced4da" ALIGN="CENTER">列 'Age' (整数)</TD><TD BGCOLOR="#ced4da" ALIGN="CENTER">列 'Score' (浮点数)</TD></TR> <TR><TD BGCOLOR="#ced4da" ALIGN="RIGHT">索引 0</TD><TD>Alice</TD><TD>25</TD><TD>85.5</TD></TR> <TR><TD BGCOLOR="#ced4da" ALIGN="RIGHT">索引 1</TD><TD>Bob</TD><TD>30</TD><TD>92.1</TD></TR> <TR><TD BGCOLOR="#ced4da" ALIGN="RIGHT">索引 2</TD><TD>Charlie</TD><TD>22</TD><TD>78.0</TD></TR> </TABLE> >]; }Pandas DataFrame 的视图,显示行索引标签、列标签(可能包含数据类型)和数据网格。尽管 DataFrame 内部使用 NumPy 数组来提升效率,但它提供了更灵活和富有表现力的接口来处理结构化数据。它在操作期间自动处理数据对齐,并提供精巧的方法进行索引、切片、重塑、合并和处理缺失信息。这使其成为数据清理、数据检查和分析任务中不可或缺的工具,这些任务在数据科学和 AI 工作流程中很常见。接下来的章节将会说明如何从各种数据源创建这些多用途的 DataFrame 对象,以及如何开始了解其内容。