小戚园地

Do as I want to do!
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

pandas 修改 DataFrame 列名

Posted on 2018-08-18 14:45  YeanJay  阅读(759)  评论(0编辑  收藏  举报

问题

有一个DataFrame,列名为:['$a', '$b', '$c', '$d', '$e']
现需要改为:['a', 'b', 'c', 'd', 'e']
有何办法?

import pandas as pd
df = pd.DataFrame({'$a': [1], '$b': [1], '$c': [1], '$d': [1], '$e': [1]})

  

解决

方式一:columns属性

# ①暴力
df.columns = ['a', 'b', 'c', 'd', 'e']

# ②修改
df.columns = df.columns.str.strip('$')

# ③修改
df.columns = df.columns.map(lambda x:x[1:])

  

方式二:rename方法、columns参数

# ④暴力(好处:也可只修改特定的列)
df.rename(columns=('$a': 'a', '$b': 'b', '$c': 'c', '$d': 'd', '$e': 'e'}, inplace=True) 

# ⑤修改
df.rename(columns=lambda x:x.replace('$',''), inplace=True)