Skip to main content
 首页 » 编程设计

python之在 Pandas 数据框中查找元素

2025年05月04日13softidea

我有一个 pandas 数据框,如下所示:

0 1 
0 2 
2 3 
1 4 

我想要做的是:如果我得到 2 作为输入,我的代码应该在数据框中搜索 2,当它找到时返回另一列的值。在上面的示例中,我的代码将返回 0 和 3。我知道我可以简单地查看每一行并检查是否有任何元素等于 2,但我想知道是否有解决此类问题的方法。

更新:所有列都不是索引列。

谢谢

请您参考如下方法:

>>> df = pd.DataFrame({'A': [0, 0, 2, 1], 'B': [1,2,3,4]}) 
>>> df 
   A  B 
0  0  1 
1  0  2 
2  2  3 
3  1  4 

以下 pandas 语法等同于 SQL SELECT B FROM df WHERE A = 2

>>> df[df['A'] == 2]['B'] 
2    3 
Name: B, dtype: int64 

还有pandas.DataFrame.query:

>>> df.query('A == 2')['B'] 
2    3 
Name: B, dtype: int64