python - 使用索引重命名多个列
问题描述
如何使用索引重命名数据框的多个列?例如,我想将位置 5、6、7、8 的列分别重命名为“五”、“六”、“七”、“八”。我不想单独输入字典中的键。
解决方案
在已经有字典的情况下,您可以使用rename
映射到新的轴值:
df = pd.DataFrame(columns=range(10))
d = {5:'five', 6:'six', 7:'seven', 8:'eight'}
df = df.rename(d, axis=1)
# Index([0, 1, 2, 3, 4, 'five', 'six', 'seven', 'eight', 9], dtype='object')
或者,正如@ch3ster 所指出的那样, rename 接受两个参数,index
并column
允许独立地重命名两者:
df = df.rename(columns=d)
如果您知道要重命名的列范围,并且有一个新列名列表,您可以构建一个字典,如下所示rename
:
l = ['five', 'six', 'seven', 'eight', 'nine']
df = df.rename(columns=dict(zip(range(5,9), l)))
推荐阅读
- python - “ImportError:DLL 加载失败”构建聊天机器人
- sql-server - 基于查询中当前日期的动态日期选择
- html - 在 rmarkdown 中转义原始 html
- ios - Swift:如何访问选定表格视图单元格的值
- javascript - 在路由更改 VueJS 上运行突变?
- material-ui - 如何在 Material UI 中更改框颜色
- python - Python str 子类表示一个不是真实字符串的值
- python - 置换值熊猫数据框
- ibm-cloud - “安装模块 node-red-dashboard 失败:”错误
- python - 带有numpy的python上的CNOT量子门