我正在尝试生成一个包含 n 个数字序列(作为字符)的字符向量,每个数字元素之间有 m 个空字符串元素。
我设法使用循环生成向量。有没有一种方法可以在没有循环的情况下更简洁地实现这个,这样会更有效率吗?
sequence = character(0)
n = 3
m = 2
for(i in 1:n){
sequence <- c(sequence, rep("",m), i)
i <- i + 1
}
输出是一个向量,如:
c("","","1","","","2","","","3")
最佳答案
这是使用 rep
和 lapply
的另一种方法。
seq_fun <- function(n, m){
unlist(lapply(1:n, function(x) c(rep("", times = m), x)))
}
seq_fun(3, 2)
# [1] "" "" "1" "" "" "2" "" "" "3"
关于r - 如何在没有循环的情况下生成顺序字符向量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56651751/