我有一个带有多级索引(“示例”和“索引”)的Pandas数据框,我想找到所有非唯一的第一级(“示例”)索引值,并打印出这些值。
我的框架如下所示:
A
instance index
a 1 10
2 12
3 4
b 1 12
2 5
3 2
b 1 12
2 5
3 2
我想找到“B”作为重复的0级索引,并打印出它的值(“b”)。
5条答案
按热度按时间11dmarpk1#
可以使用
get_duplicates()
方法:(In我的示例数据
0
和1
都出现了多次。)get_level_values()
方法可以接受标签(如'instance')或整数,并检索MultiIndex的相关部分。kulphzqa2#
假设你的
df
有一个由'instance'
和'index'
组成的索引,你可以这样做:其结果为:
在末尾添加
.values
(.drop_duplicates().values
)将生成一个数组:或者使用
.groupby
对一行执行相同操作:goqiplq23#
这应该会给予你一整行,这是不完全是你所要求的,但可能是足够接近:
df[df.index.get_level_values('instance').duplicated()]
xmd2e60i4#
您需要复制的方法:
jfewjypa5#
要查看具有重复索引的行: