如何使用 Pandas 的分层索引
索引就像一个地址,这就是如何访问整个数据框架或系列的任何数据点。行和列都有索引,行的索引被称为索引,对于列,它是一般的列名。
分层索引
层次索引也被称为多索引,是将一个以上的列名设置为索引。在这篇文章中,我们将使用homelessness.csv文件。
输出:
在下面的数据框中,没有索引。
数据框架中的列:
输出:
为了使列成为索引,我们使用pandas的Set_index()函数。如果我们想让一列成为索引,我们可以简单地在set_index()中以字符串的形式传递该列的名称。如果我们想做多索引或者分层索引,我们在set_index()中传递列名列表。
下面的代码演示了pandas中的分层索引:
输出:
现在,数据框架使用的是分层索引或多索引。
请注意,这里我们做了3列索引(’region’、’state’、’individuals’)。第一个索引’region’被称为level(0)索引,它位于索引层次结构的顶端,下一个索引’state’是level(1)索引,它位于主索引或level(0)索引之下,以此类推。因此,索引的层次结构就形成了,这就是为什么这被称为层次索引。
我们有时可能需要把一个列作为索引,或者我们想把索引列转换成正常的列,所以有一个pandas reset_index(inplace = True)函数,它使索引列成为正常的列。
在分层索引中选择数据或使用分层索引:
为了使用.loc()方法从数据框架中选择数据,我们必须在一个列表中传递索引的名称。
输出:
我们不能只使用level(1)索引来从数据框架中获取数据,如果我们这样做的话,会出现错误。我们只能使用级别(1)索引或内部索引与级别(0)或主索引与图元的帮助列表。
输出:
在图元列表的帮助下使用内部层次索引。
语法:
输出: