如何批量将Python Pandas数据框的所有列标题转为大写?
Pandas批量将列标题转为大写的简便方法
最直接的批量转换方案
对于Pandas入门学习者,最直观且简便的批量转换列标题为大写的方法,就是利用Pandas内置的字符串批量处理能力:
import pandas as pd # 创建示例数据框 df = pd.DataFrame({ 'name': ['Alice', 'Bob'], 'age': [25, 30], 'city': ['New York', 'London'] }) # 一步批量转换列标题为大写 df.columns = df.columns.str.upper() # 查看转换后的列标题 print(df.columns) # 输出: Index(['NAME', 'AGE', 'CITY'], dtype='object')
代码拆解解释
df.columns:获取数据框当前的所有列标题集合.str.upper():Pandas为字符串类型索引/列提供的批量处理方法,自动对每个列标题执行大写转换,不用手动写循环遍历- 赋值回
df.columns:完成数据框列标题的更新
另一种灵活方案:使用rename方法
如果后续需要扩展列名处理逻辑,比如同时做其他格式调整,可以用rename方法,直接传入str.upper作为列名转换规则:
# 方式1:生成新数据框(不修改原数据) new_df = df.rename(columns=str.upper) # 方式2:直接修改原数据框 df.rename(columns=str.upper, inplace=True)
入门小贴士
- 转换前可以先单独执行
print(df.columns.str.upper())预览结果,确认无误再赋值,避免误操作 - 即使列标题包含空格、特殊字符,
str.upper()也能正常处理 - 若要保留原始数据,优先选择生成新数据框的方式,避免直接修改原数据导致不可逆的变化
内容的提问来源于stack exchange,提问作者Athul Dinesh
相关产品推荐
相关产品推荐

