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

如何在pandas DataFrame中筛选仅以纯数字命名的列

问题原因

你之前使用的正则\d+规则为「匹配所有包含至少一个数字的字符串」,因此列名中带有数字的Trap1 Odds Band这类列也会被命中,不符合纯数字列名的筛选要求。

解决方案

调整正则表达式,用锚定符限制字符串的开头和结尾都必须为数字,修改后代码如下:

# 直接筛选得到纯数字命名的列
output_df.filter(regex=r'^\d+$', axis=1).columns

# 如果需要直接得到列表格式结果,可以追加tolist()方法
output_df.filter(regex=r'^\d+$', axis=1).columns.tolist()

正则说明

  • ^ 匹配字符串的起始位置
  • \d+ 匹配1个及以上的数字字符
  • $ 匹配字符串的结束位置
    三者组合后规则为「从头到尾完全由数字组成的字符串」,刚好可以筛选出你需要的['1', '2', ... , '10']这类列。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 03:54:03