使用 pandas 重命名数据框列中的元素
Posted
技术标签:
【中文标题】使用 pandas 重命名数据框列中的元素【英文标题】:rename elements in a column of a data frame using pandas 【发布时间】:2013-09-04 02:43:04 【问题描述】:使用熊猫:
df = pd.DataFrame('n':['d','a','b','c','c','a','d','b'], 'v':[1,2,1,2,2,1,1,1])
如何重命名df.n
中的元素,使a
更改为x
,b
更改为y
,c
更改为w
和d
更改为z
,结果在:
n v
0 z 1
1 x 2
2 y 1
3 w 2
...
【问题讨论】:
【参考方案1】:您可以将替换值字典传递给 Series replace 方法:
In [11]: df['n'].replace('a': 'x', 'b': 'y', 'c': 'w', 'd': 'z')
Out[11]:
0 z
1 x
2 y
3 w
4 w
5 x
6 z
7 y
Name: n, dtype: object
In [12]: df['n'] = df['n'].replace('a': 'x', 'b': 'y', 'c': 'w', 'd': 'z')
【讨论】:
【参考方案2】:你也可以使用下面的:
df['n'].replace(['a', 'b', 'c', 'd'], ['x', 'y', 'w', 'z'])
将所有 a 替换为 x,b 替换为 y,c 替换为 w,d 替换为 z。注意:如果您传递两个列表,它们的长度几乎相同
【讨论】:
以上是关于使用 pandas 重命名数据框列中的元素的主要内容,如果未能解决你的问题,请参考以下文章