从基于另一列的列中获取值

Get a vlaue from a column based on another column

假设我有这样一个数据框:

   id       name             folder 
0   4     test_policy_1       testing
1   5     loop_foot_1         final
2   6     column_case_1       testing 
3   7     line_push_1         final

我想检查名称是否包含 return id 6 的“case”。

我试过这个:

for i in df.index:
        if "case" in df['name'][i]:
            print( df['id'][i])
        else:
            print("File not found")

它向我展示了这个:

File not found
File not found
6
File not found

如何修改此代码以仅获取 id 6?

这为您提供了一个值,但如果您删除 .iat[0],您将获得数据框,以防您有多个行满足您的条件

df[df.name.str.contains('case')]['id'].iat[0]

这会给你一个 ID 列表

df[df.name.str.contains('case')]['id'].tolist()