我想产生一个具有以下重复模式的向量:
1 1 2 1 2 3 1 2 3 4 ...
范围从一个到任意停止点。
我可以使用sapply
和unlist
一起破解它,如下所示,但是可以肯定,应该有一个比这更直接的基础调用。
repeating_function <- function(stop_point) {
res_list <- sapply(1:stop_point, FUN=function(x) {1:x}, simplify=TRUE)
res <- unlist(res_list)
return(res)
}
哪个产生:
repeating_function(5)
[1] 1 1 2 1 2 3 1 2 3 4 1 2 3 4 5
答案 0 :(得分:1)
一个更简单的选择是
sequence(sequence(5))
#[1] 1 1 2 1 2 3 1 2 3 4 1 2 3 4 5
包装函数
repeating_function(val) {
sequence(sequence(val))
}