pandas 的dataframe 中,有时需要将某列的值替换为另一个值,pandas中可以直接利用map()里传入字典kv对的方式实现替换
如下: 需要将相应的数值编码替换为实际的类别含义 。 选择对应的列,调用map传入字典kv 对
#arcCatCodeToChara 为字典kv对。k为原值,v为要替换为的值
arcCatCodeToChara={7434051:'摄影',1331190321:'搞笑',20785:'娱乐',5469252:'家居',27186:'情感',28977:'国际',70:'军事',31281:'科技',6500679:'动漫',13874:'数码',20529:'文化',7030834:'时政',6835763:'时尚',4747317:'房产',6370870:'职场',73:'教育',7431489:'动物',19506:'体育',7886148:'宠物',49:'游戏',4877126 :'天气',71:'育儿',1966500147:'未知',27954:'健康',17741:'小说',5257551:'科学',5524048:'美食',7823953:'美女',75:'收藏',29233:'社会',121:'财经',1161328177:'设计',28978:'历史',108:'星座',109:'汽车',28783:'宗教',30257:'旅游',26162:'彩票',4739907:'风水',1735222577:'影视',27953:'音乐',7761201:'未知1',7760690:'未知2',5400912:'未知3',5588291:'未知4',3689035:'未知5',12589:'未知未打上'}
class_merged['class']=class_merged['class'].map(arcCatCodeToChara) # map里传入实现数值替换为对应的铭文汉子字符串
class_merged.head(3)
class_merged[['class','ratio_0525','ratio_0526','ratio_0527']].sort_values(by='ratio_0526',ascending=False)
结果: