替换数据框列中的值

时间:2019-06-17 16:44:20

标签: r

a<-c('F','M','F','M','M','F')
b<-data.frame(a)
d<- c('1','2')

预期结果:

  a
1 1
2 2
3 1
4 2
5 2
6 1

1 个答案:

答案 0 :(得分:1)

使用factor方法,将labels指定为'd'

b$a <- factor(b$a, levels = c('F', 'M'), labels = d))

或具有基于命名向量的匹配

setNames(d, c("F", "M"))[as.character(b$a)]