Я хотел бы назвать / переименовать столбцы фрейма данных / таблицы на лету во время использования операций lapply. Например:
df <- tibble(names = rep("abc",100),
number1 = sample(1:1000, size = 100),
number2 = sample(10:900, size = 100),
char_1 = sample(c("a","b","c"), size = 100, replace = TRUE),
number3 = round(rnorm(100, mean = 100)))
files_names <- df %>%
distinct(char_1 ) %>%
deframe %>% as.list()
names(files_names) <- files_names
lapply()
df_a <- df %>% filter(char_1 == "a")
lst_files <- lapply(files_names, function(x){
df %>% filter(char_1 == x) %>%
mutate(str_glue("{x}_num3") = number3 +100)
})
Error: unexpected '=' in:
" df %>% filter(char_1 == x) %>%
mutate(str_glue("{x}_num3") ="
})
Error: unexpected '}' in "}"
В этом примере я использую функцию mutate и, конечно, получаю ошибку,
но, как правило, мне нужно использовать операции выбора / переименования или преобразования внутри laply
, предпочтительно с комбинацией функции str_glue или paste. Спасибо за ваше время.