Python数据帧获取一个值的行和列

时间:2017-06-19 21:41:10

标签: python pandas dataframe

   b1  b2
0   0   1
1   2   3
2   4   5

例如,我们在python中有一个数据帧,当你输入4时可以得到值(b1,2),当输入值为5时得到值(b2,2)。

在数据框中也有重复的值,我希望得到他们所有的位置。

1 个答案:

答案 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)