Python 在pandas中映射数据框中的组名称
我有一个数据帧Python 在pandas中映射数据框中的组名称,python,pandas,Python,Pandas,我有一个数据帧 df=pd.DataFrame({'name':['a','b','c','a','b','a'],'value':\ [1,2,3,4,5,6],'value2':[7,8,9,10,11,12]}) 我想将列名映射到一个新列表,例如:['G'、'H'、'F'],这样我就可以得到: df=pd.DataFrame({'name':['G','H','F','G','H','G'],'value':\ [1,2,3,4,5,6],'value2':[7,8,9,10
df=pd.DataFrame({'name':['a','b','c','a','b','a'],'value':\
[1,2,3,4,5,6],'value2':[7,8,9,10,11,12]})
我想将列名映射到一个新列表,例如:['G'、'H'、'F'],这样我就可以得到:
df=pd.DataFrame({'name':['G','H','F','G','H','G'],'value':\
[1,2,3,4,5,6],'value2':[7,8,9,10,11,12]})
口述:
mapping = {'a':'G', 'b':'H', 'c':'F'}
然后:
使用内置的
pandas
方法:
>>> df=pd.DataFrame({'name':['a','b','c','a','b','a'],'value':\
... [1,2,3,4,5,6],'value2':[7,8,9,10,11,12]})
>>> df
name value value2
0 a 1 7
1 b 2 8
2 c 3 9
3 a 4 10
4 b 5 11
5 a 6 12
>>> df.name.map({'a':'G','b':'H','c':'F'})
0 G
1 H
2 F
3 G
4 H
5 G
Name: name, dtype: object
>>> df['name'] = df.name.map({'a':'G','b':'H','c':'F'})
>>> df
name value value2
0 G 1 7
1 H 2 8
2 F 3 9
3 G 4 10
4 H 5 11
5 G 6 12
>>>
>>> df=pd.DataFrame({'name':['a','b','c','a','b','a'],'value':\
... [1,2,3,4,5,6],'value2':[7,8,9,10,11,12]})
>>> df
name value value2
0 a 1 7
1 b 2 8
2 c 3 9
3 a 4 10
4 b 5 11
5 a 6 12
>>> df.name.map({'a':'G','b':'H','c':'F'})
0 G
1 H
2 F
3 G
4 H
5 G
Name: name, dtype: object
>>> df['name'] = df.name.map({'a':'G','b':'H','c':'F'})
>>> df
name value value2
0 G 1 7
1 H 2 8
2 F 3 9
3 G 4 10
4 H 5 11
5 G 6 12
>>>