如果行和值都已知,如何返回列的标签?
我有一个 pandas 数据框,其中行名为“A”、“B”、“C”,列名为“X”、“Y”、“Z”。知道行中有一个值(例如 A),我想返回该列。查看示例,当我知道“A”行中的值为“1”时,我希望返回“X”。如何实现这一目标?
data=[[1,2,3],[4,5,6],[7,8,9]]
d=pd.DataFrame(data, ["A", "B", "C"], ["X", "Y", "Z"])
X Y Z
A 1 2 3
B 4 5 6
C 7 8 9
最佳答案
如果您知道 1
在 A
中,请使用 loc
并获取结果索引
s = df.loc['A'].eq(1)
s[s].index
返回
Index(['X'], dtype='object')
如果您知道您的行中只有一个值为 1
的单元格,则使用 .item()
>>> s[s].index.item()
'X'
关于python - 如果 pandas 中已知列(或索引),如何返回值的索引(或列)标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56101098/