You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中如何筛选DataFrame首下划线后数字大于20的列

筛选首下划线后数字大于20的DataFrame列列表

假设你的DataFrame列名格式为c_xx_xx_器官名,要筛选首下划线后数字大于20的列,可通过以下方法实现:

前提说明

示例列名需为字符串类型,修正后的列名列表如下:

column_names = ["c_12_2_heart", "c_29_4_lung", "c_21_21_stomach", "c_2_25_bladder", "c_40_1_kidney"]

方法1:列表推导式

直接遍历列名,分割后提取目标数字进行判断:

# 假设你的DataFrame名为df
filtered_columns = [col for col in df.columns if int(col.split('_')[1]) > 20]

方法2:filter函数+lambda表达式

用函数式编程的方式完成筛选:

filtered_columns = list(filter(lambda col: int(col.split('_')[1]) > 20, df.columns))

逻辑说明

  • col.split('_')将列名按下划线拆分为列表,例如"c_29_4_lung"会被拆分为["c", "29", "4", "lung"]
  • 取拆分后列表的第2个元素(索引为1),转换为整数后判断是否大于20
  • 得到filtered_columns后,可直接用于提取DataFrame的子集:df_filtered = df[filtered_columns]

内容的提问来源于stack exchange,提问作者Niam45

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 04:10:40