R语言如何将列表对应位置元素拼接得到目标字符串向量
R 列表按位置拼接字符串简便方案
有两种非常简洁的实现方式,不需要手动转矩阵:
- 方法1:使用
do.call直接调用paste0,是最短的实现
代码示例:
运行后l = list(c("a", "b", "c"), c("d", "e", "f")) result <- do.call(paste0, l)result的输出即为你需要的"ad" "be" "cf"。原理是do.call会将列表内的所有元素按顺序作为参数传入paste0,paste0默认使用空字符作为分隔符,自动按对应位置拼接向量元素。 - 方法2:使用
mapply逐位拼接
代码示例:
这种方法适合需要自定义对应位置拼接逻辑的场景,灵活性更高。result <- mapply(paste0, l[[1]], l[[2]])
两种方法都比先转矩阵再拼接的逻辑更简洁,执行效率也更高,适配任意长度的等长列表元素拼接场景。
内容的提问来源于stack exchange,提问作者Serhii
相关产品推荐
相关产品推荐

