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)
我想在位置“c”用“b”替换“a”以生成一个新列表。
预期结果如下:
[[1]]
[1] 1 5 7
[[2]]
[1] 1 5
[[3]]
[1] 1 7 4
谢谢你的帮助!
最佳答案
听起来您正在寻找 Map
同时迭代所有列表。
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
关于用 R 中的另一个替换列表的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35284021/