Python 3.x 在Pandas多索引系列中,我想删除索引外部级别的最后一个元素,新系列将与旧系列具有相同的顺序

Python 3.x 在Pandas多索引系列中,我想删除索引外部级别的最后一个元素,新系列将与旧系列具有相同的顺序,python-3.x,pandas,Python 3.x,Pandas,我希望输出为: City Year Jallandhar 2011 23457 2012 34523 Mohali 2011 22243 2012 32239 Ludhiana 2011 32224 2012 34343 Ambala 2011 33344 2012 23999 dtype: int64 这不能

我希望输出为:

City        Year
Jallandhar  2011    23457
            2012    34523
Mohali      2011    22243
            2012    32239
Ludhiana    2011    32224
            2012    34343
Ambala      2011    33344
            2012    23999
dtype: int64
这不能通过切片实现,因为切片需要对索引进行排序,如果排序,输出将不有序。
那么,在删除索引外部级别的最后一个元素的同时,以与原始系列相同的顺序获得输出的最佳方法是什么呢。您可以通过名称来引用级别,但如果您总是想要最外层的级别,那么它将是
0

City        Year
Jallandhar  2011    23457
            2012    34523
Mohali      2011    22243
            2012    32239
Ludhiana    2011    32224
            2012    34343
dtype: int64

我可能不完全理解你关于排序的评论。您的意思是,在数据帧的前面可能有带有
Ambala
的行,而不是与最终出现的行分组,您希望保留它们还是删除它们?如果是,你需要什么样的行为?
s = s.drop(s.index.get_level_values(0)[-1], level=0)
#City        Year
#Jallandhar  2011    23457
#            2012    34523
#Mohali      2011    22243
#            2012    32239
#Ludhiana    2011    32224
#            2012    34343
#dtype: int64