python – 如何计算Pandas Dataframe中变量的唯一组合
发布时间:2020-12-20 11:52:30 所属栏目:Python 来源:网络整理
导读:我正在使用pandas来计算数据帧中变量集的唯一组合.我目前正在使用.groupby()函数,但我认为我缺少它的一部分功能. 示例代码: import pandasdf = pd.DataFrame([['A','C','G'],['A','H'],'D',['B','E','I'],'F','I']],columns=['a','b','c'])df a b c0 A C G1
我正在使用pandas来计算数据帧中变量集的唯一组合.我目前正在使用.groupby()函数,但我认为我缺少它的一部分功能.
示例代码: import pandas df = pd.DataFrame([['A','C','G'],['A','H'],'D',['B','E','I'],'F','I']],columns=['a','b','c']) df a b c 0 A C G 1 A C H 2 A D G 3 A D H 4 B E I 5 B F I 我想知道,对于每个独特的价值a,它有多少不同的b?在此示例中,所需输出为A:2,B:2,因为A具有两个唯一的b值,B具有两个唯一的b值. 如果我计算每个的唯一c,我会期望A:2,B:1. 我目前的代码是: df.groupby(['a','b'],as_index=False).count().groupby(['a'],as_index=False).count()[['a','b']] a b 0 A 2 1 B 2 df.groupby(['a','c'],'c']] a c 0 A 2 1 B 1 这给了我正确的结果,但我认为应该有办法避免两组groupby()和count(),不是吗? 解决方法
nunique怎么样?
df.groupby('a')['b'].nunique() Out[36]: a A 2 B 2 Name: b,dtype: int64 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |