Присвоить числа значениям строк в кадре данных - PullRequest
0 голосов
/ 21 сентября 2018

допустим, у меня есть фрейм данных

A     B     C
john  I     agree 
ryan  II    agree
rose  V     strongly agree 
Shawn VI    disagree 

что я хочу сделать, это присвоить номера значениям столбца C, как это?

A     B     C
john  I     1 
ryan  II    1
rose  V     2
Shawn VI    0

кто-нибудь знает, как это сделать?

Ответы [ 2 ]

0 голосов
/ 21 сентября 2018

Вы также можете использовать apply и lambda

        A               C
0  john           agree
1  ryan  strongly agree
2  rose        disagree

Просто выполните

df_t['C'] = df_t['C'].apply(lambda x: 1 if x =='agree' else (0 if x=='disagree' else 2))

, что приводит к

     A  C
0  john  1
1  ryan  2
2  rose  0

Но с использованием map как указано выше @jezrael - лучшее решение.

0 голосов
/ 21 сентября 2018

Использование map от dictionary:

df['C'] = df['C'].map({'agree':1, 'strongly agree':2, 'disagree':0})
print (df)
       A   B  C
0   john   I  1
1   ryan  II  1
2   rose   V  2
3  Shawn  VI  0
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...