鉴于我有4个不同的值
intensities <- c(0.1,-0.1,0.05,-0.05)
我的目标是随机抽取每个值5次,但正值和负值应交替,例如
resulList =(0.1,-0.05,0.05,-0.05,0.1,-0.1,…)
有人知道在R中这样做的优雅方式吗?
最佳答案 也许这样的事情
# seed
set.seed(123)
plus <- rep(intensities[intensities >= 0], each = 5)
minus <- rep(intensities[intensities < 0], each = 5)
out <- numeric(length(plus) + length(minus))
out[seq(1, length(out), 2)] <- sample(plus)
out[seq(2, length(out), 2)] <- sample(minus)
out
# [1] 0.10 -0.05 0.05 -0.10 0.10 -0.05 0.05 -0.05 0.05 -0.10 0.10 -0.05 0.05 -0.05 0.05 -0.10
# [17] 0.10 -0.10 0.10 -0.10