如何为pandas DataFrame所有列名添加指定前缀实现批量重命名
解决方案
完全可以实现,以下是几种常用的实现方式:
- 方法1:直接修改列名属性,写法最简洁
# 先将列名字符串转为float再转int去除.0后缀,拼接前缀 df.columns = [f"period_{int(float(col))}" for col in df.columns]
如果你的列名本身就是float类型而非字符串,可以简化为:
df.columns = [f"period_{int(col)}" for col in df.columns]
- 方法2:使用
rename方法,支持不修改原DataFrame,更灵活
# 如需修改原对象可以加inplace=True参数 df = df.rename(columns=lambda col: f"period_{int(float(col))}")
- 方法3:如果确认列的顺序严格对应0到23,也可以直接生成新列名赋值
df.columns = [f"period_{i}" for i in range(24)]
内容的提问来源于stack exchange,提问作者Crubal Chenxi Li
相关产品推荐
相关产品推荐

