2016-10-14 2 views
1

у меня есть dataframeотображение имен групп в dataframe в панд

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]}) 

ответ

0

Сделать Dict:

mapping = {'a':'G', 'b':'H', 'c':'F'} 

Тогда:

df['name'] = [mapping[item] for item in df['name']] 
2

Используйте встроенный 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 
>>> 
Смежные вопросы