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
相关推荐
香橙薄荷心16 分钟前
学一学前沿开发语言之Python
人工智能·python
潜意识起点16 分钟前
Java数组:静态初始化与动态初始化详解
java·开发语言·python
余生H16 分钟前
深入理解HTML页面加载解析和渲染过程(一)
前端·html·渲染
KevinRay_17 分钟前
Numpy指南:解锁Python多维数组与矩阵运算(下)
python·矩阵·numpy·排序·文件读写
m0_7482333623 分钟前
Python大数据可视化:基于python的电影天堂数据可视化_django+hive
python·信息可视化·django
睡觉待开机31 分钟前
python-判断语句(黑马程序员B站Python免费教学, 第三章内容总结)
python
2301_8091774737 分钟前
2025.01.15python商业数据分析
开发语言·python
ghostwritten42 分钟前
学习 Python 编程的规则与风格指南
python·学习
疯狂学习GIS43 分钟前
Python读取栅格图像并对像元数据处理后导出到表格文件中
python·rs·遥感数据
吴敬悦1 小时前
领导:按规范提交代码conventionalcommit
前端·程序员·前端工程化