Я никогда не мог найти хороший способ сделать это. Я пытаюсь создать пользовательскую функцию для сопоставления цветов RColorBrewer с уровнями переменных в data_frame. Я рисую цвета узлов в igraph, и для этого требуется цветовой вектор. Я сделал это так далеко, прежде чем получить ошибку.
library(tidyverse)
library(RColorBrewer)
my_data <- data_frame(
x = sample(c('red','white','foo'),25,T)
)
my_data %>%
group_by(x) %>%
mutate(Blues = brewer.pal(n_distinct(x),'Spectral')) ## this doesn't work
Мне нужна работающая функция. Что-то вроде следующего:
function(df,vary){
df %>%
group_by(vary) %>%
mutate(Blues = brewer.pal(n_distinct(vary),'Spectral')) %>%
select(Blues)
}
Спасибо за любую помощь!