问题描述

假设你现在有一列名为score的数据,里面数据包含’Excellent’, ‘Good’, ‘Ok’, ‘Not_Ok’, 'Bad’这5个类型,你想把他们换成1,2,3,4,5来对应标注。

问题解决

首先生成示例数据

import pandas as pd

score = ['Excellent','Good','Ok','Not_Ok','Bad','Excellent','Good','Good',\
         'Excellent','Not_Ok','Excellent',\
         'Good','Good','Not_Ok','Not_Ok']
         
scores = pd.DataFrame({'score':score})

Python中字典的巧用!

targets = scores['score'].unique()     #查看唯一类型的值

Python中字典的巧用!

data_dict = {}
count = 1
for data in targets:
    data_dict[data] = count      #  将类别变量和数值设置成键值对
    count += 1
    
 print(data_dict)

Python中字典的巧用!

scores['score'] = scores['score'].replace(data_dict)
print(scores['score'])

Python中字典的巧用!
这样,所有的变量都变成我们想要的赋值了!

相关文章: