首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在熊猫群中只对某几行进行排序?

问如何在熊猫群中只对某几行进行排序?
EN

Stack Overflow用户
提问于 2018-03-31 00:26:20
回答 1查看 809关注 0票数 2

我有一个按df分组的dataframe df。对于每个组,有一个行具有标识它的第一个实例'First' == 1的标志。

我最终想要按承认日期对每个组进行排序,但是,无论其日期如何,我都需要使用'First' == 1的行作为该组的第一行。然后,我想根据承认日期对其余的行进行排序。

样本df

代码语言:javascript
复制
ID     admit     discharge    discharge_location   first
20     3-4-2018  3-6-2018     Home                 1
20     2-2-2018  2-6-2018     Home                 0
20     2-5-2018  2-23-2018    Home                 0
30     1-2-2018  2-3-2018     Home                 0
30     1-15-2018 1-18-2018    Home                 1
30     1-20-2018 1-24-2018    Home                 0

预期df

代码语言:javascript
复制
ID     admit     discharge    discharge_location   first
20     3-4-2018  3-6-2018     Home                 1
20     2-2-2018  2-6-2018     Home                 0
20     2-5-2018  2-23-2018    Home                 0
30     1-15-2018 1-18-2018    Home                 1
30     1-2-2018  2-3-2018     Home                 0
30     1-20-2018 1-24-2018    Home                 0

我的方法不考虑“第一”列在组中的第一位。

代码语言:javascript
复制
df.sort_values(by=['ID','admit'], inplace=True)

我一整天都被这事绊倒了。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-03-31 00:44:54

这是兄弟,

代码语言:javascript
复制
df.sort_values(by=['ID', 'first', 'admit'], 
               ascending = [True, False, True],
               inplace = True)
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49583055

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档