如何在R语言中将两个向量相加并返回列表格式结果
实现向量逐元素与另一向量全量相加并返回列表结果
给定两个向量:
a = c(1:4) b = c(5:8)
要生成一个列表,其中每个元素是a的单个元素与整个b向量相加的结果,可用基础R的lapply函数实现:
result <- lapply(a, function(x) x + b)
执行上述代码后,得到的结果与期望一致:
#> [[1]] #> [1] 6 7 8 9 #> #> [[2]] #> [1] 7 8 9 10 #> #> [[3]] #> [1] 8 9 10 11 #> #> [[4]] #> [1] 9 10 11 12
代码说明
lapply(a, function(x) x + b)会遍历a中的每一个元素x,利用R的向量自动广播特性,将x与b的每个元素逐一相加,最终返回包含4个元素的列表,每个元素对应a中元素与b相加的结果。
内容的提问来源于stack exchange,提问作者geoscience123
相关产品推荐
相关产品推荐

