purr :: pmap не сохраняет имена параметров - PullRequest
0 голосов
/ 07 октября 2018

Я пытаюсь выполнить функцию, которая использует имена переданных параметров с purrr::pmap.В отличие от purrr::map (см. Ниже), pmap не сохраняет эти имена.Ниже MWE фиксирует проблему:

print_names <- function(x) {
  print(names(x))
}

namedVec <- c(nameA = "valueA")
purrr::map(list(namedVec), print_names)
# [1] "nameA"
# [[1]]
# [1] "nameA"
purrr::pmap(list(namedVec), print_names)
# NULL
# $nameA
# NULL

1 Ответ

0 голосов
/ 07 октября 2018

Обратите внимание, что в pmap аргумент .l должен быть списком перечисленных аргументов, но при вызове вашей функции это просто список:

print_names <- function(x) {
  print(names(x))
}

namedVec <- c(nameA = "valueA")

purrr::map(list(namedVec), ~print_names(.))
#> [1] "nameA"
#> [[1]]
#> [1] "nameA"

purrr::pmap(list(list(namedVec)), print_names)
#> [1] "nameA"
#> [[1]]
#> [1] "nameA"

Создано в 2018 г.-10-07 представит пакет (v0.2.1)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...