python对含数字的列名排序和去重

目录

问题描述:

'kw_`85`-1_Avg', 'kw_`85`-2_Avg', 'kw_70-1_Avg', 'kw_70-2_Avg', 'kw_50-3_Avg', 'kw_10-4_Avg'

将第一个数字重复的字符串(如:'kw_85-1_Avg', 'kw_85-2_Avg'),

删除一个,保留第二个数字最小的字符串(如:kw_85-1_Avg)

python 复制代码
def sort_column(columns):
    # 提取第一个数字部分,并存储到字典中
    first_digit_dict = {}
    for col in columns:
        match = re.match(r'ws_(\d+)-(\d+)_Avg', col)
        if match:
            key = match.group(1)  # 提取第一个数字部分
            if key not in first_digit_dict:
                first_digit_dict[key] = col
            else:
                # 如果有多个相同的key,选择优先级更高的列
                current_priority = int(first_digit_dict[key].split('-')[1].split('_')[0])
                new_priority = int(col.split('-')[1].split('_')[0])
                if new_priority < current_priority:
                    first_digit_dict[key] = col
    unique_columns = list(first_digit_dict.values())
    return unique_columns
相关推荐
deli00711 小时前
手机20%突然关机?电量百分比是估的,SOC曲线4组实测
前端
锋行天下16 小时前
langgraph 后端发自定义数据,前端接收方法概括
人工智能·python
benchmark_cc18 小时前
用 QuantDash 读取单只股票五档盘口:抽样、缺失值检查与复现记录
python·数据分析·pandas·量化交易·股票数据·quantdash
曲径海盗18 小时前
【Python 学习第 55 天】列表基础
python·学习笔记·编程入门
专注仿真18 小时前
知识问答模型用到的算法集详解及代码实例
python·算法·代码·大模型训练·控制算法
jyOverQ19 小时前
我写了一个 CSDN Markdown 图片助手:告别本地图片逐张上传
python·工具·csdn
深蓝AI21 小时前
Meta 开源用了八年的设计系统 astryx:连坐两天 GitHub 总榜第一,组件库开始写给 agent 的说明书
前端·人工智能
刘马想放假1 天前
CANviz 使用指南|Linux 安装、DBC 解码、实时曲线与 J1939 实战
linux·python·websocket
IT_陈寒1 天前
Vue的watch把我坑惨了,原来要这样用才靠谱
前端·人工智能·后端
1-1=01 天前
Vue 3 模板语
前端·javascript·vue.js