在熊猫中对具有多个条件的数据进行排序[关闭]
Posted
技术标签:
【中文标题】在熊猫中对具有多个条件的数据进行排序[关闭]【英文标题】:Order the data with multiple conditions in pandas [closed] 【发布时间】:2020-06-11 18:05:48 【问题描述】:我有这样的数据:
ID daea01 date02 ID_NUM
AAA 2000-01-01 00:00:00 2000-02-02 01:01:01 12345
BBB 2000-05-01 00:00:00 2000-03-02 01:01:01 52489
AAA 2000-05-01 00:00:00 2000-01-02 01:01:01 12548
AAA 2000-01-01 00:00:00 2000-02-01 01:01:01 78954
...
AAA 2000-01-01 00:00:00 2000-08-02 01:01:01 12345
BBB 2000-05-01 00:00:00 2000-06-02 01:01:01 52489
AAA 2000-05-01 00:00:00 2000-06-02 01:01:01 12548
BBB 2000-01-01 00:00:00 2000-02-02 01:01:01 78954
...
我要对数据进行排序:
按 AAA 和 BBB 排序
对于每个 AAA 或 BBB,从最早的日期时间开始排序 date01
对于 AAA 和 date01 的组合,将 date02 排序(同一个 datetime 组放在一起,并且从最旧的 datetime 开始排序)
这是预期的结果:
ID daea01 date02 ID_NUM
AAA 2000-01-01 00:00:00 2000-02-01 01:01:01 78954
AAA 2000-01-01 00:00:00 2000-02-02 01:01:01 12345
AAA 2000-01-01 00:00:00 2000-08-02 01:01:01 12345
AAA 2000-05-01 00:00:00 2000-01-02 01:01:01 12548
AAA 2000-05-01 00:00:00 2000-06-02 01:01:01 12548
BBB 2000-01-01 00:00:00 2000-02-02 01:01:01 78954
BBB 2000-05-01 00:00:00 2000-03-02 01:01:01 52489
BBB 2000-05-01 00:00:00 2000-06-02 01:01:01 52489
...
对 Python 非常陌生,在此先感谢您。
【问题讨论】:
到底是什么问题?你在哪个部分苦苦挣扎?你有没有尝试过,做过任何研究? Stack Overflow 不是免费的代码编写服务,也不是教程和文档的替代品。请参阅:tour、How to Ask、help center、meta.***.com/questions/261592/…。 【参考方案1】:您可以像这样对 Dataframe 进行排序:
df.sort_values(by=['ID', 'daea01','date02'])
【讨论】:
重新赋值或添加 inplace=True 确保日期时间也是实际日期时间,以获得良好的解决方案;)以上是关于在熊猫中对具有多个条件的数据进行排序[关闭]的主要内容,如果未能解决你的问题,请参考以下文章