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

如何高效移除DataFrame中数千列列名的点号?[Python]

高效批量移除DataFrame列名中的点号

嘿,这事儿太好办了!9000列手动用rename一个个改绝对不现实,给你两个高效的批量处理方案,都是一行代码就能搞定:

  • 方法一:直接修改columns属性(最直观高效)
    利用pandas的字符串方法str.replace批量替换所有列名里的点号,记得要加上regex=False——默认情况下.会被当成正则通配符匹配任意字符,关掉正则模式才能精准替换字面意义的点号:

    df.columns = df.columns.str.replace('.', '', regex=False)
    

    这个方法会直接修改原DataFrame的列名,所有带点号的列名都会被移除点号(比如traffic.seas1变成trafficseas1),不带点号的列名则完全不受影响。

  • 方法二:使用rename配合lambda函数
    如果你习惯用rename方法,也可以用匿名函数批量处理所有列名:

    df = df.rename(columns=lambda col_name: col_name.replace('.', ''))
    

    要是想直接修改原DataFrame不用返回新对象,加个inplace=True参数就行,效果和第一种方法完全一致。

两种方法都能完美适配你的场景,不管是几十列还是9000列,处理速度都很快,完全不用手动逐个指定列名~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 09:21:20