i have df column values ex. 4,5,6,7,3,1,1,3
want column in df based on these values. have key pair names() (names on top)
one det somet ish hir whynot 4 5 6 7 3 1
i want new column based on second vector names in place of column one's values based on second vector
try
df$v2 <- setnames(names(v2), v2)[as.character(df$v1)]
or use match
df$v2 <- names(v2)[match(df$v1, v2)]
data
df <- structure(list(v1 = c(4, 5, 6, 7, 3, 1, 1, 3)), .names = "v1", row.names = c(na, -8l), class = "data.frame") v2 <- c('one'=4, 'det'=5, 'somet'=6, 'ish'=7, 'hir'=3, 'whynot'=1)
Comments
Post a Comment