这只是为多索引数据帧的初学者分享一个非常基本的概念。
我注意到2索引(多索引)DF的索引列中有空项。 虽然这一定是多索引数据帧的基础,但我对它并不熟悉,已经忘记了它。 我没有很快注意到这可能的意义,因为我有非常大的数字作为索引值,你甚至没有开始检查它们的重要性。 使用df.sort_index(inplace=true)
进行排序也无助于清除空项。 乍一看,数据集本身的第一个索引有部分空行。 搜索“多索引的空项”也无济于事。 这就是为什么我要和其他多索引数据帧的初学者分享这个非常简单的问题。
以下是索引列“A_IDX”中的“空项”:
A_idx B_idx
12344 12345 0.289163 -0.464633 -0.060487
12345 0.224442 0.177609 2.156436
12346 12346 -0.262329 -0.248384 0.925580
12347 12347 0.051350 0.452014 0.206809
12348 2.757255 -0.739196 0.183735
12349 -0.064909 -0.963130 1.364771
12350 12351 -1.330857 1.881588 -0.262170
这只是为多索引数据帧的初学者分享一个非常基本的概念。
“空”项是multiindex视图的一部分,它们实际上并不是空的:
如果您在不同级别上有索引,那么只有一个方向的层次结构是可能的,父项的空项宁愿是NaN,并且索引名不会在输出的同一行中。 在下面的内容中,“first”和“second”是具有相同权限的索引名,它们位于输出的同一行。
first second
bar one 0.289163 -0.464633 -0.060487
two 0.224442 0.177609 2.156436
baz one -0.262329 -0.248384 0.925580
foo one 0.051350 0.452014 0.206809
two 2.757255 -0.739196 0.183735
three -0.064909 -0.963130 1.364771
qux one -1.330857 1.881588 -0.262170
感谢这个示例,访问pandas DataFrame中内部多索引级别的最后一个元素。
这实际上意味着:
first second
bar one 0.289163 -0.464633 -0.060487
bar two 0.224442 0.177609 2.156436
baz one -0.262329 -0.248384 0.925580
foo one 0.051350 0.452014 0.206809
foo two 2.757255 -0.739196 0.183735
foo three -0.064909 -0.963130 1.364771
qux one -1.330857 1.881588 -0.262170