【发布时间】:2015-01-18 22:59:48
【问题描述】:
我有兴趣创建一个序列向量,从 0 到 1,但 seq() 的“by”参数不同。
我从一个希望用于“by”参数的向量开始:
x <- c(3,6,3,9,10)
我希望这是 seq( ) 函数的输入:
seq(0, 1, by = 1/(x-1))
所以对于向量的前几个元素,它将是:
seq(0, 1, by = 1 / (3 - 1))
seq(0, 1, by = 1 / (6 -1))
产生向量,例如:
0.0 0.5 1.0
0.0 0.2 0.4 0.6 0.8 1.0
最终,我希望输出是一个长向量,其中包含所有这些不同长度的序列。也许是一个循环的工作?还是 sapply / lapply?
【问题讨论】:
-
是的,你需要一个循环,因为
seq只生成等间距的值。但这是一个简单的循环:myseq<-vector(); for(i in 1:length(x)) myseq<-c(myseq,seq(0,1,by=1/(x[j]-1)))(未测试)