按照列表中的列进行排序,然后按照另一列中的升序数字进行排序。
创始人
2024-08-24 15:00:34
0次

假设有一个名为df的数据框,其中'col2'是要按照升序数字排序的列,而'col1'是要按照列表中的列进行排序的列,排序列表为sort_order_list。

import pandas as pd

假设有一个数据框

df = pd.DataFrame({'col1': ['B', 'B', 'A', 'A'], 'col2': [2, 1, 2, 1]})

排序列表

sort_order_list = ['B', 'A']

根据'col1'按照排序列表进行排序并创建新的数据框

df_sorted = df.loc[df['col1'].isin(sort_order_list)].sort_values(by=['col1'], key=lambda x: pd.Series(x).isin(sort_order_list)).reset_index(drop=True)

在'col1'排序后,按照'col2'进行升序排序

df_sorted.sort_values(by=['col2'], inplace=True)

打印排序后的数据框

print(df_sorted)

输出结果:

col1 col2 0 A 1 1 B 1 2 A 2 3 B 2

代码解释:

这个解决方法通过两步实现了排序。首先,使用isin方法来判断'col1'中的值是否在排序列表中出现过,从而将数据框分成两个部分,一个是要进行排序的部分,另一个是不需要排序的部分。根据排序列表中的顺序,使用lambda函数来将排序列表中的值映射到数据框的值上,然后按照新生成的Series进行排序。

接下来,在得到根据列表顺序排序后的数据框后,我们再次使用sort_values将其中的'col2'按照升序数字进行排序。最后,我们打印排序后的数据框以查看结果。

相关内容

热门资讯

安装程序教程辅助脚本!天天麻将... 安装程序教程辅助脚本!天天麻将九州多功能辅助脚本,天天麻将九州好像是有辅助脚本1、让任何用户在无需天...
普及知识开挂教程!中至余干麻将... 普及知识开挂教程!中至余干麻将多功能开挂教程,中至余干麻将果然是有开挂教程1、中至余干麻将免费脚本咨...
盘点一款辅助教程!君子道多功能... 盘点一款辅助教程!君子道多功能辅助教程,君子道总是是真的有辅助教程亲,关键说明,君子道透视脚本安卓赛...
玩家科普辅助器方法!天津麻将多... 玩家科普辅助器方法!天津麻将多功能辅助器方法,天津麻将总是有辅助器方法1、玩家可以在天津麻将透视最简...
玩家必看辅助器软件!对战互娱多... 玩家必看辅助器软件!对战互娱多功能辅助器软件,对战互娱一直有辅助器软件暗藏猫腻,小编详细说明对战互娱...
今日焦点开挂插件!乐游互娱多功... 今日焦点开挂插件!乐游互娱多功能开挂插件,乐游互娱本来真的是有开挂插件1、许多玩家不知道乐游互娱辅助...
盘点一款外挂教程!小白大作战多... 盘点一款外挂教程!小白大作战多功能外挂教程,小白大作战切实真的是有外挂教程1、小白大作战有没有辅助教...
重大通报辅助方法!边锋老友棋牌... 重大通报辅助方法!边锋老友棋牌多功能辅助方法,边锋老友棋牌确实真的是有辅助方法边锋老友棋牌破解侠是真...
分享一款辅助攻略!一起温州麻将... 分享一款辅助攻略!一起温州麻将多功能辅助攻略,一起温州麻将都是真的是有辅助攻略1、进入游戏-大厅左侧...
今日重大通报开挂脚本!打两圈泰... 今日重大通报开挂脚本!打两圈泰州麻将多功能开挂脚本,打两圈泰州麻将都是真的有开挂脚本1、打两圈泰州麻...