gpt4 book ai didi

python - 选择 Pandas 中 ID 相同但值不同的行

转载 作者:太空宇宙 更新时间:2023-11-04 08:34:06 27 4
gpt4 key购买 nike

我知道这在数据库软件中是可能的,但有什么方法可以在 Python Pandas 中做到这一点吗?

ID1         ID2      Value
1209345 1203 2
1209345 1204 3 <-----
1209345 1205 4
1209345 1203 2
1209345 1204 7 <-----
1209346 1203 1
1209347 1204 5

我有 ID1,与此对应,我有多个 ID2 映射到一个值。我需要找到 ID1ID2 匹配但值不同的所有条目。

我当前的代码计算ID1ID2 的唯一组合的数量,但不考虑每个组合的唯一Value:

print(df.groupby(['ID1', 'ID2']).size())

ID1 ID2
1209345 1203 2
1204 2
1205 1
1209346 1203 1
1209347 1204 1
dtype: int64

注意:这个问题是为删除了他的 original question 的@RohitGirdhar 发布的.我发布的解决方案不一定是唯一的或最好的;鼓励其他答案。

最佳答案

您可以使用 nunique 进行过滤和 transform :

df = df[df.groupby(['ID1', 'ID2'])['Value'].transform('nunique') > 1]

print (df)
ID1 ID2 Value
1 1209345 1204 3
4 1209345 1204 7

关于python - 选择 Pandas 中 ID 相同但值不同的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50583828/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com