使用熊猫从索引和值返回列名称

时间:2019-05-25 03:47:25

标签: python pandas dataframe select

我正在寻找一种找到具有索引号和值的列名的方法。

original = {'col1': [1, 2,0,9], 'col2': [3, 4, 2,5]}
original = pd.DataFrame(data=original)

    col1    col2
0   1        3
1   2        4
2   0        2
3   9        5

例如,我想找到列中记录2的位置。 我只知道索引号1和值2,但不知道列名是什么。

我希望返回唯一的列名col1。

2 个答案:

答案 0 :(得分:1)

使用loc选择行,然后使用idxmax选择列:

(original.loc[1] == 2).idxmax()
# 'col1'

如果“ 1”是整数位置而不是索引标签,请使用iloc进行行选择:

(original.loc[1] == 2).idxmax()
# 'col1'

答案 1 :(得分:0)

此解决方案使用numpy.argwhere

original.columns[np.argwhere(original.iloc[1,:] == 2)[0][0]]