作者:旭峰fd_817 | 来源:互联网 | 2023-02-05 18:31
我有一个数字向量
x <- c(2,5,1,6)
我正在尝试生成一系列值 - 从1开始 - 介于值和包含值之间,x
以便我留下以下字符串
1,2,3,4,5,4,3,2,1,2,3,4,5,6
我试图找到执行此任务所需的功能(例如seq,order,arrange)但是我似乎无法找到我需要做的事情.
1> Frank..:
假设隐含的初始值为1,这似乎有效:
res <- Reduce(function(y, z) c(head(y,-1), tail(y,1):z), x, init=1L)
# 1 2 3 4 5 4 3 2 1 2 3 4 5 6
如果你必须把它作为逗号字符串:paste(res, collapse=",")
.
对于一个大问题,这将变得非常低效,因为我正在循环中增长一个对象.我建议那个案例的Rcpp包,或者更仔细地计算数学.