在R中用另一个替换列表的值

lig*_*ail 4 r list

a,b和c是列表.

a<-list(c(6,5,7),c(1,2),c(1,3,4))
b<-list(c(1,2,3),c(4,5),c(6,7,8))
c<-list(1,2,2)
Run Code Online (Sandbox Code Playgroud)

我想在"c"处将"a"替换为"b"以生成新列表.

预期结果如下:

[[1]]
[1] 1 5 7

[[2]]
[1] 1 5

[[3]]
[1] 1 7 4
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助!

MrF*_*ick 8

Sounds like you're looking for Map to iterate over all the lists simultaneously.

Map(function(a,b,c) {a[c]<-b[c]; a},a,b,c)
# [[1]]
# [1] 1 5 7
#
# [[2]]
# [1] 1 5
#
# [[3]]
# [1] 1 7 4
Run Code Online (Sandbox Code Playgroud)