Используя ваш код, мы можем просто добавить res_purr <-
res_purrr <- map(1:4, function(i)
map(letters[1:3], function(j)
res_purrr[[paste(i,j)]] <- paste(i,j)
)
)
str(res_purrr)
# List of 4
# $ :List of 3
# ..$ : chr "1 a"
# ..$ : chr "1 b"
# ..$ : chr "1 c"
# ...
Редактировать
Если вопрос был о воспроизведении res
в противоположностьчтобы не сохранить результат map
, здесь как (аналогичный, но) альтернативный подход к ответу @ Moody_Mudskipper:
x <- do.call(paste, expand.grid(1:3, letters[1:4], stringsAsFactors = FALSE))
res <- setNames(as.list(x), x)
str(res)
# List of 12
# $ 1 a: chr "1 a"
# $ 2 a: chr "2 a"
# ...
А здесь с пользовательской функцией вместо paste
x <- do.call(function (Var1,Var2) paste(sqrt(Var1),toupper(Var2)),
expand.grid(1:4, letters[1:3], stringsAsFactors = FALSE))
res <- setNames(as.list(x), x)
str(res)
# List of 12
# $ 1 A : chr "1 A"
# $ 1.4142135623731 A : chr "1.4142135623731 A"
# $ 1.73205080756888 A: chr "1.73205080756888 A"
# $ 2 A : chr "2 A"
# ...