Pandas DataFrame 中根据条件获取元素所在位置的索引方法
本文介绍在 Pandas DataFrame 中,如何根据特定条件筛选行并获取其在原数据框中的位置索引。通过布尔索引结合 index.tolist() 方法,可精准定位符合条件的行索引列表,适用于需要定位数据位置的场景。
在 DataFrame 数据结构中,有时需要依据特定条件筛选数据,并找出符合该条件的行在原数据框中的具体位置索引。
实现该功能的核心代码如下:
df = pd.DataFrame({'BoolCol': [1, 2, 3, 3, 4],'attr': [22, 33, 22, 44, 66]},
index=[10,20,30,40,50])
print(df)
a = df[(df.BoolCol==3)&(df.attr==22)].index.tolist()
print(a)
假设存在如下 DataFrame 对象 df,通过筛选“BoolCol”列值为 3 且“attr”列值为 22 的行,可以获取该行在 df 中的索引位置。
需要注意的是,返回的结果是一个包含索引值的列表。由于 DataFrame 的索引(index)可能与默认的数字下标不同,因此返回的是实际的索引值,而非简单的序列号。
BoolCol attr 10 1 22 20 2 33 30 3 22 40 3 44 50 4 66 [30]
以上即为在 Pandas DataFrame 中根据条件获取元素所在位置(索引)的方法介绍,希望能为读者提供有效的参考。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













