b1 b2
0 0 1
1 2 3
2 4 5
例如,我们在python中有一个数据帧,当你输入4时可以得到值(b1,2),当输入值为5时得到值(b2,2)。
在数据框中也有重复的值,我希望得到他们所有的位置。
答案 0 :(得分:4)
选项1
单行
不推荐!
a.unstack().eq(4).compress(lambda x: x).index.to_series().values[0]
('b1', 2)
选项2
np.where
i, j = np.where(a == 4)
# or faster with
# i, j = np.where(a.values == 4)
(a.columns[j[0]], a.index[i[0]])
('b1', 2)
选项3
s = a.unstack()
pd.Series(s.index.values, s.values).loc[4]
('b1', 2)