使用Purrr包向列表的每个元素粘贴额外字符

使用Purrr包向列表的每个元素粘贴额外字符,r,functional-programming,purrr,R,Functional Programming,Purrr,我有一个列表,我想迭代并在每个单词的末尾添加字符。但是,根据列表中的元素,我想更改添加的单词。我也在寻找答案背后的一些直觉。最后,我正在使用purrr包中的函数编程寻找答案 #Here is the output without using purrr my.list = list(first = c("AAPL", "MSFT"), second = c("AMZN", "NFLX")) paste(my.list[["first"]][1], ".O") p

我有一个列表,我想迭代并在每个单词的末尾添加字符。但是,根据列表中的元素,我想更改添加的单词。我也在寻找答案背后的一些直觉。最后,我正在使用purrr包中的函数编程寻找答案

#Here is the output without using purrr

my.list = list(first = c("AAPL", "MSFT"),
               second = c("AMZN", "NFLX"))

paste(my.list[["first"]][1], ".O")
paste(my.list[["first"]][2], ".O")
paste(my.list[["second"]][1], ".P")
paste(my.list[["second"]][2], ".P")
期望的输出将是一个这样的列表

$first
"AAPL.O" "MSFT.O"

$second
"AMZN.P" "NFLX.P"
我列表中的第一个向量在向量中每个单词的末尾接收“.O”。 我列表中的第二个向量在每个单词的末尾接收“.P”


多谢各位

您可以使用
purrr::map2
在相同大小的2个列表/向量上迭代
paste0
的工作原理类似于
paste
,但连接时没有空格<代码>粘贴/粘贴0是矢量化的,因此类似于
测试
suffix <- c(".O", ".P")
purrr::map2(my.list, suffix, ~paste0(.x, .y))