заполнитель magrittr дублируется в строке клея

#r #lubridate #magrittr #r-glue

#r #смазывать #магриттр #r-клей #magrittr

Вопрос:

Я хотел бы создать символьное значение с названием месяца в нем. Я могу извлечь название месяца с помощью today() >%> months() , но как только я передаю результат в glue() и начинаю использовать заполнитель ( . ), значение за заполнителем дублируется. Кто-нибудь знает, что здесь происходит?

 library(lubridate)
library(glue)
library(magrittr)

# returns month name as character
today() %>% 
  months()
#> [1] "April"

# when piping into glue(), I get an unexpected output
today() %>% 
  months() %>% 
  glue("my_test_{.}")
#> Aprilmy_test_April
  

Создано 2019-04-04 пакетом reprex (версия 0.2.1)

Комментарии:

1. Есть ли причина, по которой вы не можете использовать paste ? Например, paste0("my_test_", .) .

2. да, я мог бы использовать paste() , но мой реальный код более сложный, и я хотел бы использовать склеивания, улучшающие читаемость

3. Исходя из вашего текущего вопроса, paste было бы предпочтительным решением. glue требуются именованные аргументы, поэтому при передаче безымянной строки возникают проблемы. Если вы считаете, что paste в вашей ситуации это не сработает, можете ли вы изменить вопрос так, чтобы он больше напоминал ваш реальный код?