【发布时间】:2022-02-01 20:19:37
【问题描述】:
我有以下熊猫数据框
df = pd.DataFrame([[99, 88, 88, 66, 66, 99, 66, 77, 77, 77, 66, 66, 99, 99], list('DAABBBBABCBDDD'), ['***','**','****','*','***','*','**','***','*','*','****','**','**','****']]).T
df.columns = ['col1','col2','col3']
假设 col1 是公司,col2 是产品类型。我正在寻找拥有最多不同产品类型的公司。
所以我正在寻找 col1 中的哪个唯一值在 col2 中具有最大数量的唯一值
我尝试了以下方法:
df.groupby(['col1'])['col2'].nunique()
返回:
col1
66 2
77 3
88 1
99 2
现在我想从 col1 中获取 col2 中值最高的值。即:
77 3
我试过了
df.groupby(['col2'])['col1'].nunique().max()
但是我只收到 col2 中唯一值的最大值
3
相反,我想知道 col2 的最大值和 col1 中的哪个值。即
77 3
感谢您的帮助!
【问题讨论】:
标签: python pandas group-by unique-values