gpt4 book ai didi

python - 如何获取python pandas数据框中出现的两列的唯一组合数

转载 作者:行者123 更新时间:2023-12-04 03:01:24 24 4
gpt4 key购买 nike

假设我在 Pandas 中有这个数据框

     a    b
1 203 487
2 876 111
3 203 487
4 876 487

还有更多我不在乎的列没有显示

我知道 len(df.a.unique())将返回 2 以指示 a 有两个唯一值, len(df.b.unique()) 也是如此。 .我想要类似的东西,但返回发生的 a AND b 的唯一组合的数量。所以在这个例子中,我希望它返回 3。

任何关于我如何去做这件事的指导都值得赞赏

最佳答案

使用 drop_duplicates :

print (df.drop_duplicates(['a','b']))
a b
1 203 487
2 876 111
4 876 487

a = len(df.drop_duplicates(['a','b']).index)

duplicated 有反转条件:
a = (~df.duplicated(['a','b'])).sum()
a = len(df.index) - df.duplicated(['a','b']).sum()

或将列转换为字符串并连接在一起,然后得到 nunique :
a = (df.a.astype(str) + '_' + df.b.astype(str)).nunique()
print (a)
3

关于python - 如何获取python pandas数据框中出现的两列的唯一组合数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48850160/

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