如何在组中查找缺失值

如何在组中查找缺失值

我有大量的餐厅检查数据集。一项检查将触发若干违反代码的行为。我想找出是否任何检查均未包含违反特定法规的行为(以获取有害生物证据)。我将数据保存在Pandas数据框中。

我尝试根据是否包括对害虫的违法行为来分离数据框。我尝试按违规代码分组。似乎无法弄清楚。

害虫违规为“ 3A”时,数据如下所示:

import pandas as pd

df = pd.DataFrame(data = {
    'visit' : ['1', '1', '1', '2', '2', '3', '3'],
    'violation' : ['3A', '4B', '5C', '3A', '6C', '7D', '8E']
    })


  visit violation
0     1        3A
1     1        4B
2     1        5C
3     2        3A
4     2        6C
5     3        7D
6     3        8E


我想这样结束:

result = pd.DataFrame(data = {
    'visit' : ['3', '3'], 'violation' : ['7D', '8E']
    })


Out[15]:
  visit violation
0     3        7D
1     3        8E

最佳答案

尝试使用:

value = '3A'
print(df.groupby('visit').filter(lambda x: all(value != i for i in x['violation'])))


输出:

  violation visit
5        7D     3
6        8E     3

关于python - 如何在组中查找缺失值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57156056/

10-09 08:45