根据不同列中的总唯一值返回熊猫列排序

发布于 2025-02-08 23:41:44 字数 304 浏览 3 评论 0原文

我正在尝试解决以下问题。

我需要根据B列的最高唯一结果。

df.groupby(['Col1', 'Col2'])['Col2'].unique().sort_values().count()

这是我提出的最高唯一结果,它仅返回唯一值的总数,任何指导都将不胜感激。

输入 Col1 Col2 山姆·琼斯摔断脚趾 丽贝卡·史蒂文斯(Rebecca Stevens)断臂 山姆·琼斯(Sam Jones)摔断的脚

输出

山姆·琼斯(Sam Jones)-2 丽贝卡·史蒂文斯-1

I am trying to solve the following issue.

I need to return the top 10 results from column A, based upon the highest total of unique results from column B.

df.groupby(['Col1', 'Col2'])['Col2'].unique().sort_values().count()

This is what I came up with and it returns just the total count of unique values, any guidance would be greatly appreciated.

Input
Col1 Col2
Sam Jones Broken Toe
Rebecca Stevens Broken Arm
Sam Jones Broken Foot

output

Sam Jones - 2
Rebecca Stevens -1

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

再可℃爱ぅ一点好了 2025-02-15 23:41:44
df = pd.DataFrame.from_dict({'Col1': {0: 'Sam Jones', 1: 'Rebecca Stevens', 2: 'Sam Jones'},
                             'Col2': {0: 'Broken Toe', 1: 'Broken Arm', 2: 'Broken Foot'}})

df.groupby(['Col1']).agg('nunique').sort_values(by='Col2', ascending=False)[:10]
df = pd.DataFrame.from_dict({'Col1': {0: 'Sam Jones', 1: 'Rebecca Stevens', 2: 'Sam Jones'},
                             'Col2': {0: 'Broken Toe', 1: 'Broken Arm', 2: 'Broken Foot'}})

df.groupby(['Col1']).agg('nunique').sort_values(by='Col2', ascending=False)[:10]
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文