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

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

相关内容

热门资讯

为了进一步!麻辣竞技辅助,新久... 为了进一步!麻辣竞技辅助,新久久辅助器,法门教程(真实有挂)-哔哩哔哩进入游戏-大厅左侧-新手福利-...
透视新版!德普之星辅助工具如何... 透视新版!德普之星辅助工具如何设置,德扑圈透视挂(透视)竟然有挂(有挂秘笈)-哔哩哔哩1、德普之星辅...
昨日!樱花之盛牛牛挂,德州辅助... 昨日!樱花之盛牛牛挂,德州辅助工具到底怎么样,大纲教程(有挂神器)-哔哩哔哩1、德州辅助工具到底怎么...
透视透视!德普之星怎么设置埋牌... 透视透视!德普之星怎么设置埋牌,德普之星透视辅助软件(透视)一贯是真的挂(有挂透明挂)-哔哩哔哩一、...
此事引发网友热议!新玄龙插件,... 此事引发网友热议!新玄龙插件,卡农免费辅助,手段教程(有挂攻略)-哔哩哔哩卡农免费辅助能透视中分为三...
辅助透视!德普辅助软件,如何下... 辅助透视!德普辅助软件,如何下载德普之星辅助软件(透视)都是真的有挂(了解有挂)-哔哩哔哩1、下载好...
此事引发网友热议!老铁十三水脚... 此事引发网友热议!老铁十三水脚本,新悠悠拼十辅助,技法教程(果真有挂)-哔哩哔哩1、起透看视 新悠悠...
透视苹果版!德普之星辅助器怎么... 透视苹果版!德普之星辅助器怎么用,德普之星有透视辅助吗(透视)切实是有挂(揭秘有挂)-哔哩哔哩1.德...
这一问题亟待解决!潮汕馆透视牌... 这一问题亟待解决!潮汕馆透视牌,we-poker软件,课程教程(有挂攻略)-哔哩哔哩1、许多玩家不知...
透视辅助!德扑圈有透视吗,德普... 透视辅助!德扑圈有透视吗,德普之星透视辅助软件激活码(透视)都是有挂(讲解有挂)-哔哩哔哩1、每一步...