我的数据就像
id name status
1 test True
2 prod True
3 Db False
1 test False
4 Staging True
3 Db False
2 prod True
我想根据ID对数据进行分组,并获取状态为True和False的数据ID。以上数据应返回为:
id name Status
1 Test True
答案 0 :(得分:1)
如果我对您的理解正确,则可以使用此方法:
df = df.groupby('d').filter(lambda x: any(x['status'] == True))
df = df.groupby('d').filter(lambda x: any(x['status'] == False))
输出:
d name status
0 1 test True
3 1 test False
并且在应用drop_duplicates
之后:
df = df.drop_duplicates(subset=['d'])