购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.5 Pandas中表格的结构

2.1~2.4节中,在读取Excel文件或CSV文件后,总会赋值给df变量,df就是DataFrame的意思,DataFrame以表格形式存储数据,此种表格也是我们操作的主要对象,所以本节将详细剖析这种表格结构。

2.5.1 DataFrame数据结构

在讲解DataFrame表格的数据结构之前,先读取Excel中的分数表数据为DataFrame表格,示例代码如下:

被读取的Excel文件如图2-9所示,运行结果如图2-10所示。

图2-9 被读取的Excel文件

图2-10 读取后的DataFrame表格

图2-10所示的表格就是DataFrame数据,也可以翻译为数据帧,但为了更容易理解,通常称为DataFrame表格,表明是DataFrame类型的表格,也可以简称为df表。因为它确实是一张表格,像Excel工作表一样,有行标题和列标题,不过在DataFrame表格结构中,我们更习惯称为行索引和列索引,如图2-9和图2-10所示。

DataFrame表格的行索引和列索引可以自定义,而Excel工作表的行标题和列标题是固定的,所以DataFrame表格的行索引和列索引更灵活、更强大。在后续章节中将陆续讲解DataFrame表格的行索引和列索引应用。

DataFrame表格由行索引、列索引及数据区域三大部分组成,下面介绍如何获取DateFrame表格的这3部分信息,示例代码如下:

运行结果如下:

使用DataFrame的index、columns和values这3个属性分别返回行索引、列索引及表格的数据,而df.values返回的数据结构是数组,数组将在第3章中详细讲解。

2.5.2 Series数据结构

在讲解Series数据结构之前,同样先读取Excel文件的数据,如图2-11所示,然后赋值给df变量,之后循环读取df表的列索引与列数据,获取列索引与列数据使用df.items()函数,示例代码如下:

图2-11 被读取的Excel文件

运行结果如下:

图2-11所示的工作表有3列数据,所以上面循环体中循环了3次,下面以第3次循环出的结果为例进行分析。

'基础工资'是print(t)打印出的列索引名称,'基础工资'之下是print(s)打印出的列数据,这里的列数据是以Series结构存储的,并且显示它的Name(Series名称)和dtype(类据类型)两种属性,还可以通过print(type(s))打印变量s的类型,返回<class'pandas.core.series.Series'>,进一步证明列数据就是Series结构,其实Series数据的本质是带标签的一维数组。

到此为止,可以做三点总结。

(1)从外部文件读取到Pandas中的数据是DataFrame表格。

(2)DataFrame表格的数据可以由多个Series数据构成。

(3)Series数据可以由数组、列表等可迭代对象构成。

(4)为方便表达,将Pandas简写为pd,DataFrame简写为df,Series简写为s。 EFk2GuhBEQYTUQggvResWIKDV/qo6Jx5e8sc7mmcuET4TPfbuvEVmdw0o/lAuxgP

点击中间区域
呼出菜单
上一章
目录
下一章
×