在pandas DataFrame中的任何位置搜索值

发布于 2021-01-29 15:06:40

这似乎是一个简单的问题,但是我以前找不到它(这个这个很接近,但是答案不是很好)。

问题是:如果我想在df中 某处 搜索值(我不知道它在哪一列中),然后返回所有具有匹配项的行。

什么是Pandaic最有效的方法?还有什么比:

for col in list(df):
    try:    
        df[col] == var
        return df[df[col] == var]
    except TypeError:
        continue

关注者
0
被浏览
57
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    您可以对整个DataFrame执行相等比较:

    df[df.eq(var1).any(1)]
    

    另一个选择是使用numpy比较:

    df[(df.values.ravel() == var1).reshape(df.shape).any(1)]
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看