首页 > 解决方案 > 获取包含特定值 Pandas 的列的索引

问题描述

我想找到包含特定值的列的索引。我有大数据集(超过 2500 列),值可以在任何列中。

所以,我不知道该值在哪里的列的名称。数据集很大,超过 2500 列,值可以在 2500 列中的任何一个中。

我需要列索引,而不是行索引

这只是一个示例数据集:

import pandas as pd

#THIS IS THE EXAMPLE ONLY, DATASET IS VERY BIG 
df = pd.DataFrame({'one':[1,2,3,4,5],
                   'two':[45,4,3,2,4],
                   'three':[4,2,121,111,5]})
print(df)

i = df[df==111].index
print(i)
#RESULT SHOULD BE INDEX 2

标签: pythonpandas

解决方案


尝试stackidxmax

n = (df.stack() == 111).idxmax()[1]
df.columns.get_loc(n)

Out[572]: 2

推荐阅读