[英]Combining list string elements with R
我在每个列表 position 中有一个包含多个字符串的列表(见下文)。 如您所见,在列表的每个 position 中都是两个字符串值。 我想组合两个字符串,使它们形成一个字符串并在它们之间插入一个 + 符号。
print(my_list)
>> [[1]]
>> [1] "A" "B"
>> [[2]]
>> [1] "C" "D" "E" "F"
>> [[3]]
>> [1] "G" "H"
...
这将是我想要的 output..
print(my_list)
>> [[1]]
>> [1] "A + B"
>> [[2]]
>> [1] "C + D + E + F"
>> [[3]]
>> [1] "G + H"
...
到目前为止(作为起点)我已经尝试在 for 循环中使用“粘贴”,就像这样..
for (i in my_list){
print(paste(i, sep = "+"))
}
这没有达到预期的效果。 它只是复制了每个列表项,并没有在任何地方插入 +。 这是 output..
print(my_list)
>> [1] "A" "B"
>> [1] "A" "B"
>> [2] "C" "D" "E" "F"
>> [2] "C" "D" "E" "F"
>> [3] "G" "H"
>> [3] "G" "H"
...
有任何想法吗? 干杯
一个简单的 lapply 和 paste 就可以了:
lapply(mylist, function(x) paste(x, collapse = " + "))
# [[1]]
# [1] "A + B"
#
# [[2]]
# [1] "C + D + E + F"
#
# [[3]]
# [1] "G + H"
样本数据:
mylist <- list(c("A", "B"),
c("C", "D", "E", "F"),
c("G", "H"))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.