Pandas:对列类别中的每一行进行排序/百分位

2024-09-30 08:15:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我想知道是否有一种雄辩的方法来对Pandas数据帧中的列进行排序(计算百分比),条件如下:

在每个类别中进行百分位计算。每个列将属于一个类别,并且在每个类别中进行百分比计算(请参见链接以获取图形说明)

我了解到,我可以不考虑类别进行以下操作:

TargetRanking = StartingData.rank(axis="columns", pct=True)

但我需要按每列的类别按每行分组。请参阅以下链接中的图形说明。在

enter image description here


Tags: columns数据方法图形pandas排序链接条件
1条回答
网友
1楼 · 发布于 2024-09-30 08:15:15

假设您有一个包含类别映射的dict,您可以简单地按该dict分组列,然后像前面一样使用^{}。在

categories = {'X1': 'A', 'X3': 'A', 'X5': 'A', 'X2': 'B', 'X4': 'B'}

df.set_index('Date').groupby(categories, axis=1).rank(pct=True)

enter image description here

相关问题 更多 >

    热门问题