按长度和字母数字顺序对pandas数据帧的列进行排序
创始人
2024-08-23 08:00:15
0

要按照长度和字母数字顺序对pandas数据帧的列进行排序,可以按照以下步骤操作:

  1. 导入必要的库:
import pandas as pd
import re
  1. 创建一个示例数据帧:
data = {'col1': ['a', 'bb', 'ccc', 'dddd'],
        'col2': ['1', '22', '333', '4444'],
        'col3': ['A1', 'B2', 'C3', 'D4']}
df = pd.DataFrame(data)
  1. 创建一个函数来获取字符串的长度和字母数字顺序:
def get_len_alnum(s):
    length = len(s)
    alnum = re.sub('\W+', '', s)
    return (length, alnum)
  1. 使用apply函数将该函数应用于数据帧的每一列:
df = df.apply(lambda x: pd.Series(get_len_alnum(x)))
  1. 对数据帧进行排序,先按长度进行排序,再按字母数字顺序进行排序:
df = df.sort_values(by=[0, 1], axis=1)

完整的示例代码如下:

import pandas as pd
import re

data = {'col1': ['a', 'bb', 'ccc', 'dddd'],
        'col2': ['1', '22', '333', '4444'],
        'col3': ['A1', 'B2', 'C3', 'D4']}
df = pd.DataFrame(data)

def get_len_alnum(s):
    length = len(s)
    alnum = re.sub('\W+', '', s)
    return (length, alnum)

df = df.apply(lambda x: pd.Series(get_len_alnum(x)))
df = df.sort_values(by=[0, 1], axis=1)

这将按照列中字符串的长度和字母数字顺序对数据帧的列进行排序。

相关内容

热门资讯

透视黑科技!wepoker辅助... 透视黑科技!wepoker辅助器下载,wepoker私人局辅助,演示教程(其实真的有挂)-哔哩哔哩1...
透视网页版!德普之星怎么设置埋... 透视网页版!德普之星怎么设置埋牌(透视)开挂辅助脚本(切实是真的挂)-哔哩哔哩1、这是跨平台的德普之...
透视辅助!wepoker辅助器... 透视辅助!wepoker辅助器是真的吗,we-poker有人玩吗,手段教程(果然真的有挂)-哔哩哔哩...
透视稳定!hhpoker免费透... 透视稳定!hhpoker免费透视脚本(透视)开挂辅助器(总是是真的挂)-哔哩哔哩1、玩家可以在hhp...
透视规律!如何下载wepoke... 透视规律!如何下载wepoker安装包,wepoker有没有插件,窍要教程(总是真的有挂)-哔哩哔哩...
透视机器人!wpk辅助购买(透... 您好,wpk辅助购买这款游戏可以开挂的,确实是有挂的,需要了解加去威信【136704302】很多玩家...
透视好友!hhpoker必备开... 透视好友!hhpoker必备开挂,wepoker免费脚本咨询,演示教程(真是有挂)-哔哩哔哩1、在w...
透视中牌率!wpk软件是真的吗... 透视中牌率!wpk软件是真的吗(透视)开挂辅助方法(一直真的有挂)-哔哩哔哩1、wpk软件是真的吗a...
透视系统!wepoker私人局... 透视系统!wepoker私人局辅助,pokemmo辅助工具,指引教程(总是真的有挂)-哔哩哔哩1、实...
透视ios!拱趴大菠萝辅助方法... 透视ios!拱趴大菠萝辅助方法(透视)开挂辅助挂(真是存在有挂)-哔哩哔哩拱趴大菠萝辅助方法辅助器中...