首页 > 解决方案 > 是否有一个函数可以在 pandas 单元格列表中搜索一个值,如果该值是单独的或唯一的类型,则返回行?

问题描述

我有以下数据框:

df1
ID                    Task           Type
[2456-AA, 5656-BB]    Check AC       [Coolant]
[2456-AA, 2457-AA]    Check Equip1.  [Coolant , Elec]
[2456-AA, 2456-AA]    Check Equip2.  [Coolant , Coolant]
[2456-AA, 2657-AA]    Check Equip3.  [Coolant , Bat2]

我正在尝试返回一个输出,该输出会告诉我“冷却剂”在“类型”中的所有任务和 ID。但是,只有冷却剂不与任何其他类型混合的任务和 ID。

我认为我的预期输出将是这样的数据框:

ID                    Task           Type
[2456-AA, 5656-BB]    Check AC       [Coolant]
[2456-AA, 2456-AA]    Check Equip2.  [Coolant , Coolant]

有人可以试试吗?另外,他们能否将我推荐给 oprder 中的正确阅读材料,以帮助我将来解决类似的问题?

谢谢,

标签: pythonpandasdataframe

解决方案


没有内置功能。你可以自己编:

coolant_only = df['Type'].apply(lambda x: set(x)=={'Coolant'})

df[coolant_only]

推荐阅读