按长度和字母数字顺序对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)

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

相关内容

热门资讯

透视透明!友友联盟有辅助吗,p... 透视透明!友友联盟有辅助吗,pokemmo脚本辅助器(辅助挂)详细开挂辅助插件;无需打开直接搜索打开...
透视规律!温州茶苑破解版,hh... 透视规律!温州茶苑破解版,hhpoker德州机器人(辅助挂)详细开挂辅助安装;亲,hhpoker德州...
透视挂!微信四川熊猫辅助软件,... 透视挂!微信四川熊猫辅助软件,wepoker破解工具(辅助挂)详细开挂辅助神器1、下载安装好微信四川...
透明私人局!决胜麻架胡易辅助,... 透明私人局!决胜麻架胡易辅助,红龙poker辅助器免费观看(辅助挂)详细开挂辅助平台您好:红龙pok...
透明讲解!白银胡乐修改器,wp... wpk软件是真的吗是一款专注玩家量身打造的游戏记牌类型软件,在wpk软件是真的吗这款游戏中我们可以记...
透视脚本!点点游戏辅助,约局吧... 透视脚本!点点游戏辅助,约局吧是否有挂(辅助挂)详细开挂辅助挂;无需打开直接搜索加(薇:136704...
透明总结!三哥玩辅助,wepo... >>您好:wepoker私人辅助器确实是有挂的,很多玩家在这款wepoker私人辅助器游戏中打牌都会...
透明肯定!欢乐情怀开挂,hhp... 透明肯定!欢乐情怀开挂,hhpoker到底可以作弊码(辅助挂)详细开挂辅助平台1、下载安装好hhpo...
透视最新!蜀山四川亲友房辅助免... 透视最新!蜀山四川亲友房辅助免费,wepoker破解器激活码(辅助挂)详细开挂辅助下载;亲,蜀山四川...
透视免费!pokermaste... 透视免费!pokermaster破解版,hhpoker有辅助吗(辅助挂)详细开挂辅助软件您好:pok...