R - Соответствие строк словарю и замена - PullRequest
0 голосов
/ 08 декабря 2018

Я делаю гистограммы в R и хочу изменить строки оси x, используя определенный мной словарь, содержащий более читаемые имена.Вот пример кода.

    mydata
      name  value
      <chr>  <dbl>
    1 jd        20
    2 mk        30
    3 js        40

    readable_strings <- c("John Smith" = "js", "Jane Do" = "jd", "Mike Tyson" = "mt")
    ggplot(mydata, aes(x = name, y=value)) + geom_bar(stat="identity")

Я бы хотел, чтобы читаемые имена отображались вдоль оси x.Какой лучший способ для меня это сделать?

1 Ответ

0 голосов
/ 08 декабря 2018

Вы можете сделать:

# reverse the vector
convert_vec <- names(readable_strings)
names(convert_vec) <- readable_strings

# replace the values and plot
mydata$name <- sapply(mydata$name, function(x) convert_vec[[x]])
ggplot(mydata, aes(x = name, y=values)) + geom_bar(stat="identity")
...